Snap(ウェブフレームワーク)

HaskellのWeb開発フレームワーク
スナップ
原作者グレゴリー・コリンズ、ダグ・ビアズリー[1]
開発者スナップチーム
初回リリース2010年5月; 15年前 (2010年5月
安定版リリース
1.1.3.2 [2] / 2023年7月19日; 2年前 ( 2023-07-19 )
リポジトリgithub.com/snapframework
書かれたハスケル
オペレーティング·システムクロスプラットフォーム: UnixUnixライクmacOSWindows NT
プラットフォームIA-32x86-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アプリケーションを構築するための高レベルシステムです。
  • テンプレート、セッション管理、認証用の組み込みスナップレット。
  • ファイルのアップロード、データベース接続 ( PostgreSQLMongoDBなど)、Haskell コードからのJavaScriptの生成などの機能を備えたサードパーティ スナップレット。
  • HTTPリクエストとレスポンスへのステートフルアクセスを実現するSnapモナド[10]

SnapはWindows NTUnix系プラットフォームの両方で動作します。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ウェブフレームワーク

参考文献

  1. ^ Snap Frameworkチーム. 「Snap: Haskell Webフレームワークについて」. Snap Framework.com .
  2. ^ "snapframework/snap". GitHub .com .
  3. ^ 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.
  4. ^ Biscardi, Chris (2014). Snap for Beginners. Gumroad.
  5. ^ "snap-core". Hackage.org .
  6. ^ "snap-server". Hackage.org .
  7. ^ 「GHC 7.0.1を使用したSnap 0.3ベンチマーク」Snap Framework.com . 2014年3月2日閲覧
  8. ^ Snap Frameworkチーム. 「Snap: Haskell Webフレームワーク: Heistチュートリアル」. Snap Framework.com .
  9. ^ Snap Frameworkチーム. 「Snap: Haskell Webフレームワーク: Snapletディレクトリ」. Snap Framework.com .
  10. ^ 「Snap.Core」。Hackage.org
  11. ^ 「InfoQインタビュー:SnapとHaskellによる高性能Webアプリについて語るGregory Collins氏」2011年9月12日。
  12. ^ 「FP Completeケーススタディ – Silk – 構造化コンテンツ管理」(PDF) . FP Complete . 2014年3月2日閲覧
  13. ^ 「FP Completeケーススタディ – JanRain – ユーザー管理システム」(PDF) . FP Complete . 2014年3月2日閲覧
  14. ^ 「SnapとPostgreSQLに関するブログチュートリアル」JanRain . 2014年3月2日閲覧
  15. ^ Hoersten, Luke. 「Haskell Snap Appの実稼働」 . 2014年3月2日閲覧
  16. ^ 「Lee Paste」。Lee Pasteの金融ブログ
  17. ^ Done, Chris. 「lpaste ソースコード」. GitHub . 2014年3月2日閲覧。
  18. ^ ファン・デル・ジュート、ジャスパー。 「ハキル」。ジャスパーVdJ.be 2024 年 11 月 9 日に取得
  19. ^ 「scotty: RubyのSinatraにインスパイアされた、WAIとWarpを使用したHaskellウェブフレームワーク」Hackage.org
  20. ^ 「Spock: 迅速な開発のためのもう一つのHaskellウェブフレームワーク」Hackage.org
  21. ^ 「MFlow:ステートフルでRESTfulなウェブフレームワーク」Hackage.org
  22. ^ 「miso: おいしいHaskellフロントエンドフレームワーク」Hackage.org
  • 公式サイト
  • GitHubの Snap Framework
「https://en.wikipedia.org/w/index.php?title=Snap_(web_framework)&oldid=1319355240」から取得