2009-10-01から1ヶ月間の記事一覧

パターンマッチに機能追加

Rubyを改造して実装したパターンマッチの文法に機能を追加しました。 http://github.com/mas454/spcamp-ruby1.ネストしたパターンに対応しました。 match [[10,20],30,40] when [[y,20],30,40] puts y end => 102. *パターンを追加しました。 match ["abc", …

今日の勉強

DEBUG HACKS P157からP164 AI入門 P42からP56 Prolorgを勉強

今日の勉強

DEBUG HACKS p153からp156 バックトレース情報がおかしいと感じたときは、スタック破壊を疑うAI入門 p1からp43 20年ぐらい前の本。 古すぎてあまり意味がないような気がするが、とりあえず読んでみる。 この頃は、意識に関する研究があまり進んでいなかった…

コードリーディングメモ:MiniScheme 2

今日はs_goto、s_save、s_returnを詳しく #define s_goto(a) BEGIN operator = (short)(a); return T; ENDおおざっぱに言うとaで指定された命令を実行するマクロ。例えばs_goto(move)でmove命令を実行する見たいな感じです。(実際にはMiniSchemeにmove命令は…

今日の勉強

DEBUG HACKS p134からp143まで

今日の勉強

On Lisp p368からp386CLOSメモ defclassでクラスを定義する。 (defclass circle () (radius center)) radiusとcenterは属性 make-instanceでインスタンスを作成する例.(make-instance 'shape):accessorでアクセサ関数を定義することができる。 例.(defclass …