| スナップ | |
|---|---|
| 原作者 | グレゴリー・コリンズ、ダグ・ビアズリー[1] |
| 開発者 | スナップチーム |
| 初回リリース | 2010年5月 (2010年5月) |
| 安定版リリース | 1.1.3.2 [2]
/ 2023年7月19日 ( 2023-07-19 ) |
| リポジトリ | github.com/snapframework |
| 書かれた | ハスケル |
| オペレーティング·システム | クロスプラットフォーム: Unix、Unixライク、macOS、Windows NT |
| プラットフォーム | IA-32、x86-64 |
| 入手可能な | 英語 |
| タイプ | ウェブフレームワーク |
| ライセンス | BSD |
| Webサイト | snapframework.com |
Snapは関数型プログラミング言語Haskellで書かれたWebアプリケーションを開発するためのWebフレームワークです。[3] [4]
概要
Snap フレームワークは次の要素で構成されます。
- snap-core [5]汎用HaskellウェブサーバーAPI。
- snap-server [6]はsnap-coreインターフェースを実装した高速な[7] HTTPサーバーです。
- Heist [8]は、HTMLベースのテンプレートシステムで、ページ生成に使用されます。Haskellの機能をHTMLタグにバインドすることで、Liftのスニペットのように、ビューとバックエンドのコードを明確に分離できます。Heistは自己完結型で、単独でも使用できます。
- Snaplets [9]は、モジュール型Webアプリケーションを構築するための高レベルシステムです。
- テンプレート、セッション管理、認証用の組み込みスナップレット。
- ファイルのアップロード、データベース接続 ( PostgreSQL、MongoDBなど)、Haskell コードからのJavaScriptの生成などの機能を備えたサードパーティ スナップレット。
- HTTPリクエストとレスポンスへのステートフルアクセスを実現するSnapモナド。[10]
SnapはWindows NTとUnix系プラットフォームの両方で動作します。SnapはIteratee入出力(I/O)モデルを採用しており、[11]バージョン1.0ではI/Oはio-streamsで実装されています。
使用法
Snapは、Silk、[12] JanRain、[13] [14] Racemetric、[15] Lee Paste's Financial Blog、[16] [17] SooStone Inc、Group Commerceなどで使用されています。Snapは軽量なスタンドアロンHaskellサーバーとしても利用されています。静的サイトジェネレータHakyllは、プレビューモードにSnapを使用しています。[18]
その他のHaskellウェブフレームワーク
- Yesod(ウェブフレームワーク)
- Servant(ウェブフレームワーク)
- スコッティ[19]
- スポック[20]
- MFlow [21]
- 味噌[22]
参考文献
- ^ Snap Frameworkチーム. 「Snap: Haskell Webフレームワークについて」. Snap Framework.com .
- ^ "snapframework/snap". GitHub .com .
- ^ Collins, Gregory; Beardsley, Doug (2011年1月~2月). 「Snap Framework: Haskell用Webツールキット」(PDF) . IEEE Internet Computing . 15 (1): 84– 87. Bibcode :2011IIC....15a..84C. doi :10.1109/mic.2011.21.
- ^ Biscardi, Chris (2014). Snap for Beginners. Gumroad.
- ^ "snap-core". Hackage.org .
- ^ "snap-server". Hackage.org .
- ^ 「GHC 7.0.1を使用したSnap 0.3ベンチマーク」Snap Framework.com . 2014年3月2日閲覧。
- ^ Snap Frameworkチーム. 「Snap: Haskell Webフレームワーク: Heistチュートリアル」. Snap Framework.com .
- ^ Snap Frameworkチーム. 「Snap: Haskell Webフレームワーク: Snapletディレクトリ」. Snap Framework.com .
- ^ 「Snap.Core」。Hackage.org。
- ^ 「InfoQインタビュー:SnapとHaskellによる高性能Webアプリについて語るGregory Collins氏」2011年9月12日。
- ^ 「FP Completeケーススタディ – Silk – 構造化コンテンツ管理」(PDF) . FP Complete . 2014年3月2日閲覧。
- ^ 「FP Completeケーススタディ – JanRain – ユーザー管理システム」(PDF) . FP Complete . 2014年3月2日閲覧。
- ^ 「SnapとPostgreSQLに関するブログチュートリアル」JanRain . 2014年3月2日閲覧。
- ^ Hoersten, Luke. 「Haskell Snap Appの実稼働」 . 2014年3月2日閲覧。
- ^ 「Lee Paste」。Lee Pasteの金融ブログ。
- ^ Done, Chris. 「lpaste ソースコード」. GitHub . 2014年3月2日閲覧。
- ^ ファン・デル・ジュート、ジャスパー。 「ハキル」。ジャスパーVdJ.be 。2024 年 11 月 9 日に取得。
- ^ 「scotty: RubyのSinatraにインスパイアされた、WAIとWarpを使用したHaskellウェブフレームワーク」Hackage.org。
- ^ 「Spock: 迅速な開発のためのもう一つのHaskellウェブフレームワーク」Hackage.org。
- ^ 「MFlow:ステートフルでRESTfulなウェブフレームワーク」Hackage.org。
- ^ 「miso: おいしいHaskellフロントエンドフレームワーク」Hackage.org。
外部リンク
- 公式サイト
- GitHubの Snap Framework