| サーバント | |
|---|---|
| 原作者 | アルプ・メスタノグッラーリ、ゼンケ・ハーン、ジュリアン・アルニ |
| 初回リリース | 2014年 (2014年) |
| プレビューリリース | 0.16 / 2018 (2018年) |
| 書かれた | ハスケル |
| オペレーティング·システム | クロスプラットフォーム |
| 入手可能な | 英語 |
| タイプ | ウェブフレームワーク |
| ライセンス | BSD 3条項[1] |
| Webサイト | www.servant.dev |
Servantは関数型プログラミング言語Haskellをベースにしたウェブフレームワークで、データ型の安全性を重視しています。[2] [3] [4] [5]これはBSD 3条項ライセンスに基づいてリリースされた無料のオープンソースソフトウェアです。
概要
Servantは、ワールドワイドウェブアプリケーションプログラミングインターフェース(Web API )を記述するための型レベルのドメイン固有言語(DSL)を提供します。このような記述は、リクエストをハンドラーにディスパッチするサーバーとして、APIのドキュメントとスキーマ仕様として、そしてさまざまな言語のクライアントライブラリとして、さまざまな解釈が可能です。[6]
Servantによる型レベルのアプローチは、データと振る舞いの両方の次元に沿った拡張性を可能にすることで、式の問題を解決します。 [6] DSLにおける新しいコンビネータや用語は、モジュール式に導入することができ、それらの新しい解釈も、完全に独立したパッケージとして導入できます。2023年現在[アップデート]、Haskellパッケージリポジトリには、Servantに関連する100を超えるパッケージが公開されています。[7]
使用
これはGitHub、[8] NoRedInk、[9] Klarna、[10] Input Output Global Inc.(Cardanoプロジェクト)、[11] Wireなどの企業で実稼働に使用されています。[12]
参照
参考文献
- ^ “Servant license”. GitHub . 2023年2月10日閲覧。
- ^ Bragilevsky, Vitaly (2021年5月). Haskell in Depth . Manning. ISBN 978-1617295409。
- ^ Putrady, Ecky (2018年11月12日). 『Haskellによる実践的Web開発:高速でスケーラブルなWebアプリケーション構築に必要なスキルをマスターする』 Apress. ISBN 978-1484237380。
- ^ Mazumder, Mark; Braje, Timothy (2016年11月4日). 「Haskellによる安全なクライアント/サーバー型Web開発」. 2016 IEEE Cybersecurity Development (SecDev) . p. 150. doi :10.1109/SecDev.2016.040. ISBN 978-1-5090-5589-0. S2CID 1953852。
- ^ Mazumder, Mark; Braje, Timothy (2016年11月4日). 「Haskellによる安全なクライアント/サーバー型Web開発」. GitHub .マサチューセッツ工科大学:リンカーン研究所. 2024年11月7日閲覧。オリジナルのスライドプレゼンテーション。
- ^ ab Mestanogullari, Alp; Hahn, Sönke; Arni, Julian; Löh, Andreas (2015). 「Servant による型レベル Web API:ドメイン固有のジェネリックプログラミングの演習」.第 11 回 ACM SIGPLAN ジェネリックプログラミングワークショップの議事録. pp. 1– 12. doi :10.1145/2808098.2808099. ISBN 9781450338103. S2CID 14512955。
- ^ 「パッケージの閲覧と検索」Haskell.org: Hackage。
- ^ Thomson, Patrick; Rix, Rob; Wu, Nicolas; Schrijvers, Tom (2022年8月31日). 「GitHubにおける産学連携の実現(体験レポート)」. Proceedings of the ACM on Programming Languages . 6 : 496–511 . arXiv : 2206.09206 . doi : 10.1145/3547639. S2CID 249889460.
- ^ 「Postgres経由の型安全なMySQLクエリ」NoRedInkブログ。2019年11月5日。 2023年2月16日閲覧。
- ^ Mulder, Felix. 「Haskellの実運用:KlarnaのHaskellで書かれたサービス」 . 2023年2月16日閲覧。
- ^ 「Cardanoウォレットのデザイン」 。 2023年2月16日閲覧。
- ^ "Servant". Wire Documentation . 2023年2月16日閲覧。
外部リンク
- 公式サイト
- GitHubの Haskell-servant