|
|
No.000562 | - Wiki Edit - |
Date : | Dec.09.2005 18:48'36 |
Topic : | POPL:ういかのソースコード |
No.000545 | POPL:ういかのソースコード |
Date : | Nov.24.2005 18:36'48 |
Edit history : |
Dec.10.2005 03:48'36 |
POPL:Top ういかのソースコードについての簡単な説明を予定 *ソースコードのダウンロード ここからういかのソースコードをダウンロードできます。 http://www.limo.fumi2kick.com/chara_lang/uika_src.tgz *ういかのソース仕様 ういかは ruby で書かれています。 実装レイヤーとしては 3層あって、StackLang層、ペルソナ層、インターフェース層となります。 **StackLang層 スタック型のインタプリタ言語の実装レイヤー。 基本、ユーザーが眼にすることはない。 ***stack_lang.rb スタック操作のみを行う StackLangLv0 から始まって、そのサブクラスである Lv1, Lv2, Lv3 と徐々に機能が増えていく。 **ペルソナ層 キャラクターのペルソナ(人格)を実装するレイヤー。 ユーザーからのリクエストを StackLang層に伝えて、その結果をキャラクターっぽくユーザーへリターンする部位。 無駄なおしゃべりはここで発生する。 プログラム言語のフィルターなのだろうか。 ***persona_uika.rb コマンドリクエスト自体は StackLang の透過に近い。 会話部分が StackLang で書かれている。 **インターフェース層 ユーザーインターフェースを提供するレイヤー。 今回は WEB アプリケーションという形態をとっているので CGI。 実際にういかの文章や絵を表示する場所でもある。 ***uika.cgi HTML とペルソナ層を繋ぐ橋渡し。 ***prot1.htm HTML本体のテンプレート。 CGI はこのテンプレート内の特定箇所を書き換えて表示する。 CGI ロジックと HTML テンプレートは分離しているので、(書き換え条件を維持することを条件に)それぞれに編集可能。 |
|
|
|