実装についてオブジェクト指向でちょっと考えてみる。

まず、worldクラスを作ります。このクラスのインスタンスは、内部にobjectクラスとその全てのサブクラスから生じたインスタンスを内部に保存します。
objectクラスは、世界の中にある何か一つの塊を意味します。
最初のサブクラスであるbeingクラスは、objectクラスに生命の諸特徴を追加したクラスです。
animalクラス、plantクラスはbeingクラスを継承し、tigerクラス、monkeyクラス、mouseクラスはそれぞれanimalクラスを継承します。
worldクラスのインスタンスでpast_timeメソッドが実行されると、1単位時間が経過した扱いとなり、含まれるインスタンス全てについて、時間経過による影響、状況の変化、観察、決定、実行が行われます。
……なんか、途中のくだりが下手なオブジェクト指向マニュアル本の第一章みたいな感じがしてすごくイヤん。

これをさらに推し進めて、他者の心理を予測してそれを行動決定因子に含めるモデルを考えると、それぞれのhumanクラスのインスタンスは、その中に自分の世界の劣化コピーであるworldクラスのインスタンスを持つことになり、さらにそのインスタンスの中には、humanクラスのインスタンスが経験や伝聞から得た情報に基づく劣化コピーインスタンス群がいると言うことになる。
これって、フレーム問題も考慮しないといけなさそう。