2009年7月4日土曜日

【フムフム本】27章 Kahuaアプリケーションを書こう


* 27章 Kahuaアプリケーションを書こう
** 27.1 Kahuaとは?
- 特になし。
*** 27.1.1 継続渡しスタイル(CPS)でのプログラミング
- 特になし。
*** 27.1.2 基本データ形式はS式
- 特になし。
*** 27.1.3 オブジェクトデータベース
- おお。AllegroCacheみたいだ。
*** 27.1.4 動的でインクリメンタルな開発
- 便利そう。
*** 27.1.5 汎用アプリケーションサーバ
- この部分、興味深い。
*** 27.1.6 オープンソース
- 特になし。
** 27.2 Kahuaを準備する
- 特になし。
*** 27.2.1 インストール
- 付録にしたがってインストール済み。
*** 27.2.2 サイトバンドルの作成
- 付録にしたがって作成済み。
*** 27.2.3 Kahuaを起動する
- サブシェルで起動してみる。動いた。
*** 27.2.4 アプリケーションの雛形を生成する
- shellじゃなくてgosh上でできるといいかも。
*** 27.2.5 雛形をインストールして実行する
- なるほど。siteは公開サイトで、そこにapplication
をインストールするスタイルなのか。
- app-serversは通常時はread-onlyなのか。
- あり? 503 service unavailableだ。どこでミスっ
たかな。
- app-serversをlambda booksに戻してreloadすると動く。
- :run-by-defaultを:rub-by-defaultとtypoしてた。
- reloadして、、、、動いた。めでたい。
** 27.3 Kahuaアプリケーションの構造
- 特になし。
*** 27.3.1 アプリケーション名、エントリとURL
- 継続がRESTfull。いい感じ。
*** 27.3.2 define-entryによる名前つきエントリの定義
- 特になし。
*** 27.3.3 entry-lambdaと無名エントリ
- 特になし。
*** 27.3.4 デフォルトエントリの登録
- 特になし。
** 27.4 スケジュール管理アプリケーションをKahua化する(1)-表示-
- 特になし。
*** 27.4.1 高階タグ手続き
- 高階タグ、higher order tags、面白い。タグ(手続
き)を入力したり、タグ(手続き)を返したりするタグ
(手続き)。
*** 27.4.2 ページテンプレート
- idでひっかけるのか。classまで拡張すれば
microformatもいけるかも。
- うーん。どうもkahua-adminでのupdateが効かないみ
たい。。。あ、もしかしてアプリのソースをいじって
るんだから、再インストールが必要なのかも。

schedule $ make
make: `all' に対して行うべき事はありません.
schedule $ make check
rm -f test/test.log
cd test; /usr/local/bin/gosh -I/usr/local/kahua/lib/kahua ./test.scm > test.log
Testing schedule ... passed.
schedule $ make install
for f in schedule/schedule.kahua schedule/version.kahua; do \
/usr/local/kahua/bin/kahua-install -S /home/aka/local/var/kahua/site -t script $f;\
done
for f in schedule/schedule.css; do \
/usr/local/kahua/bin/kahua-install -S /home/aka/local/var/kahua/site -t static --no-overwrite $f;\
done
WARNING: target file /home/aka/local/var/kahua/site/static/schedule/schedule.css exists, and not to be overwritten.
for f in schedule.scm; do \
/usr/local/kahua/bin/kahua-install -S /home/aka/local/var/kahua/site -t plugin -r $f plugins/$f;\
done
for f in page.xml; do \
/usr/local/kahua/bin/kahua-install -S /home/aka/local/var/kahua/site -t template -r schedule/$f templates/$f;\
done
================================================================================

Please edit app-servers in the Kahua working directory to add
"schedule" entry.

(schedule :arguments () :run-by-default 1)

================================================================================
schedule $

- この後にadmin でupdate scheduleしたら、、、動い
た!
- これ、siteの中のschedule.kahuaをいじるべきなの
かなぁ。考えてみる。おそらく、ホスト可搬性を持
ちたいときはapplicationでちゃんとやって、REPLちっ
くになりたいときは直接いじるってことじゃないだ
ろうか。
*** 27.4.3 (欠番)
*** 27.4.4 URLにょる日付の移動
- KahuaはRESTfullだな。
*** 27.4.5 名前つきエントリへのリンク
- お、ブラウザにスタックトレースがでるだな。デバッ
グ。
** 27.5 スケジュール管理アプリケーションをKahua化する(2)-編集と保存-
- ここの時点で、2009-07-04T12:40。Shibuya.lispま
でに終わるのか?
*** 27.5.1 Kahuaオブジェクトデータベースと永続クラス
- おお、保存できる。さわりをいじってみただけだが、
これは遊べそう。AllegroCacheと比較してみるのもいいかも。
** 27.6 スケジュール管理アプリケーションをKahua化する(3)-全景-
- 特になし。


読了。

おお、ただいま13:00。渋谷に行こう!

0 件のコメント: