じゃあ魔法使いの家をやっていきますか~。ちなみに説明をDeepLで翻訳すると
「これはシンプルなテキストアドベンチャーゲームです。17章からの追加コマンドが必要なので、まだ「勝利」することはできません。第6章でカスタマイズされた REPL コードが含まれています」
とのこと。そして・・いきなり長い!ちょっといきなりレベル上がり過ぎやないですか~?まあ、コツコツやってくか・・・
日本語訳出来ないところは分かってないところなので学習中にコメントつけてくの良いなぁ。いかに流し読みしてたか思い知りますねぇ。
最後の行、「`」からの「,」区切りの部分が謎。何かpythonのFormat的なあれか?と思って調べる。
はあん・・どうやらデータモードの中にコマンドモードを入れ込むための表記方法の模様。覚えとくで。
あと「#'」って・・まあ文脈から関数を呼び出すための略号ってのは分かる
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ふーむ・・なるほどね。けどこれSchemeでも動くのかな・・以前からよく聞く「名前空間」に関係するんだろうけど問題は「別にこう書いてもSchemeで動くのか」だけど。まあ、そのうち動かしておかしかったら普通に関数名だけにするとして#'は残しておこうか。とりあえずここまでで実行してもエラーは出ないので表記として問題は無いのかな・・
確かに前部Defineで済ますとか関数名だけで呼び出すとか簡単だけど管理をしっかりしないといかんと。
ちょっと動くのかどうか調べようと思って仮の引数を入れたんですけど・・なんだこれは・・? delay・・?これが噂の遅延評価って事なのか?引数は色々と変えてみたんですけど全部これ。
後はアイテムの設定をしたところで今日はおしまいってことで。けど、確か連想リストって「.(ドット)」で区切られてなかったっけ?Commonlispだっったらエエのんか?と思って調べると
Schemeだとドットが無くてもいいみたいなのでCommonlispもそうなんだろうな、と。