9LISP の宿題。Scheme(Gauche)で作りました。作りかけですが、動くので取りあえず。
行き当たりばったりで作ったこともあり、突っ込みどころ満載でちょっと恥ずかしいですが。。
ライフゲームの動き見てるのって意外と面白いんですね。
例えば、繰り返すパターン。
(load "./lifegame.scm") (define-constant PULSER '((0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (0 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 0) (0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (0 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 0) (0 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 0) (0 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 0) (0 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 0) (0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (0 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 0) (0 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 0) (0 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 0) (0 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 0) (0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (0 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 0) (0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) (0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0))) (define pl (endless-repeat-lifegame (const->auto-step-lifegame PULSER))) (pl) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ● ○ ○ ○ ● ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ● ● ● ○ ○ ● ● ○ ● ● ○ ○ ● ● ● ○) ;; (○ ○ ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ● ○ ○ ○ ● ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ● ○ ○ ○ ● ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ○ ○) ;; (○ ● ● ● ○ ○ ● ● ○ ● ● ○ ○ ● ● ● ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ● ○ ○ ○ ● ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) (pl) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ● ● ○ ○ ○ ○ ○ ● ● ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ● ○ ○ ○ ● ● ○ ○ ○ ○ ○) ;; (○ ○ ● ○ ○ ● ○ ● ○ ● ○ ● ○ ○ ● ○ ○) ;; (○ ○ ● ● ● ○ ● ● ○ ● ● ○ ● ● ● ○ ○) ;; (○ ○ ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ○ ○) ;; (○ ○ ○ ○ ● ● ● ○ ○ ○ ● ● ● ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ● ● ● ○ ○ ○ ● ● ● ○ ○ ○ ○) ;; (○ ○ ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ○ ○) ;; (○ ○ ● ● ● ○ ● ● ○ ● ● ○ ● ● ● ○ ○) ;; (○ ○ ● ○ ○ ● ○ ● ○ ● ○ ● ○ ○ ● ○ ○) ;; (○ ○ ○ ○ ○ ● ● ○ ○ ○ ● ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ● ● ○ ○ ○ ○ ○ ● ● ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) (pl) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ● ● ● ○ ○ ○ ● ● ● ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ● ○ ○ ○ ○ ● ○ ● ○ ○ ○ ○ ● ○ ○) ;; (○ ○ ● ○ ○ ○ ○ ● ○ ● ○ ○ ○ ○ ● ○ ○) ;; (○ ○ ● ○ ○ ○ ○ ● ○ ● ○ ○ ○ ○ ● ○ ○) ;; (○ ○ ○ ○ ● ● ● ○ ○ ○ ● ● ● ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ● ● ● ○ ○ ○ ● ● ● ○ ○ ○ ○) ;; (○ ○ ● ○ ○ ○ ○ ● ○ ● ○ ○ ○ ○ ● ○ ○) ;; (○ ○ ● ○ ○ ○ ○ ● ○ ● ○ ○ ○ ○ ● ○ ○) ;; (○ ○ ● ○ ○ ○ ○ ● ○ ● ○ ○ ○ ○ ● ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ● ● ● ○ ○ ○ ● ● ● ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) (pl) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ● ○ ○ ○ ● ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ● ● ● ○ ○ ● ● ○ ● ● ○ ○ ● ● ● ○) ;; (○ ○ ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ● ○ ○ ○ ● ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ● ○ ○ ○ ● ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ○ ○) ;; (○ ● ● ● ○ ○ ● ● ○ ● ● ○ ○ ● ● ● ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ● ○ ○ ○ ● ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○ ● ○ ○ ○ ○ ○) ;; (○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○)
まだ UI がないので、IronScheme で作ろうかなぁとか考えてます。それか手っ取り早く C# で GUI 作ってデータ読み込むとか。。それなら最初から C# で作れば良いじゃんという話ですね。
0 件のコメント:
コメントを投稿