reflection
- モルフの外部参照名をそのままインスタンス変数の用に使えるようにしようとしたが、正しく動作しなかった。
- テスト実行環境の実装をまたまたはじめられなかった。(激ヤバ)
goal(進んでない)
- テキストモルフ等への参照を文字列や数字として使えるように。
- ドーナツ屋の例によるテストの記述
implementaion
- on changed の実装。モルフに変更があった場合 Player 側に通知し、制約メソッドを発動。
- 出来れば、bee を self bee に書き換え。
- parserNode へ MessageNode を挿入する為のヒント
- encoder>>encodeVariable:sourceRange:ifUnknown: で変数 scopeTableにMessageNode が入ってると良い? 下記ハングする。
scopeTable at: 'halt' put: (MessageNode new receiver: (StdVariables at: 'self') selector: #halt arguments: #() precedence: 0 from: self sourceRange: (0 to: 1)).
- 通知方式で制約を行う事の問題点
- Player はそもそも model のサブクラスとして実装されているが、Morph > Player に依存関係を貼る事によって立場が逆転してしまうが混乱しないか?
- Morph1 > Player1 <---> Player2 < Morph2
- 二つのプレイヤ間が制約を持っていた場合、ループになってしまう。
- 制約が成功したか失敗したかを通知する仕組みが必要。
- TCP/IP の仕組みが参考になる?
- 冥王星の発見伝説(計算によって発見された) は間違いが元だった?!
- テストを Player として実装する。
- Morph のプレイヤを変える仕組み。
- トランスフォーメーションの名前をちゃんと出す。
- 部分的にリリース出来るように出来るだけモジュール化する。