Escape from the cave, dive into the bed!

Metanote

対象読者

Introduction.

cavemanを使っていたのですがsnoozeに乗り換えたのでその理由を記しておきます。

What is caveman?

まずはcavemanとは何かというお話から。

cavemanningleの上に組み立てられた“microでない”web-frameworkです。 “microでない”、は、この場合

を含むことを意味します。

これは言葉を変えるなら、上記みっつの機能に不満があるなら、cavemanを使うよりningle上に自分の好むデータベース、テンプレートエンジン、コンフィグレーションを組み込んでいくほうが良いということです。

What is ningle?

次にningleとは何かというお話。

ningleclackの上に組み立てられた“micro” web-frameworkです。 “micro”、は、この場合。

くらいしかclackに追加していないことを意味します。

これは言葉を変えるなら、ルーティングに不満があるなら、ningleを使うよりclack上に自分の好むルーティングシステムを組み込んでいくほうが良いということです。

Altenatives.

cl-yesql

データベースサポートはcl-yesqlを使うことにしました。

cl-yesqlclojureyesqlから本歌取りしたものです。

なぜcl-yesqlか、についてはこの本家のREADMEに理由が記されてあります。 これがまさに膝を打つ内容でした。

markup-functions

htmlテンプレートエンジンはmarkup-functionsを使うことにしました。

djula哲学はある程度共感できましたが、今の自分には必要がないと判断しました。

DSLの学習コストが高いという印象が強うございます。

有力な代替案はcl-whoでしたが、様々な不満があったので自作しました。 不満点についてはREADMEにあるのでそちらをご覧ください。

snooze

cavemanの主要機能みっつのうち、ふたつを変えるとなると、cavemanを使う理由は乏しくなります。 ningle上に再構築しようかとリサーチをしたところsnoozeと出会いました。

snoozeは大変筋が良いように見えましたので思いきって乗り換えてみました。

snoozeのどこを「筋が良い」と判断したかについては、主にREADMEのここにございます。

Conclusion.

今の所、大変満足しております。

今後の課題はclack/lackのインターフェイスを使い続けるのか思い切って直接hunchentootに依存してしまうかです。