2014-09-23

Land of LispのコードをClojureで書いてみる 第9章

オーク・バトルをClojureで書いてみた。
はじめはプロトコルとデータ型を使用して書いてみようとおもったが、変化する値(体力、素早さ、力)の扱いがうまくいかなかったのと、デフォルト実装が扱えない(自分が知らないだけかも)ので、アトムとマルチメソッドの組み合わせで実装した。
あと、プレイヤーの値とモンスターの値をコンソールで見やすくするため、clojure.pprint/print-talbeを使ってみた。

遊んでいる画面。



2014-09-14

Land of LispのコードをClojureで書いてみる 第7章

Graphvizを使ってグラフの生成を行う。 macでhomebrewが入っているなら以下のコマンドでもインストールできる。
brew install graphviz

本と同じようにS式をdotフォーマットに変換してシェルからコマンドを叩いてやるのはめんどくさいので、ClojureからGraphvizを簡単に扱えそうなrhizomeを試しに使ってみた。使用するにはproject.cljに以下を追加。
[rhizome "0.2.1"]


実行結果


本と同様にwizard-nodesのvalue値もnode部分に表示したかったが、graphvizを使用した際にどのように渡せばよいかわからなかった。

2014-09-04

Land of LispのコードをClojureで書いてみる 第5章

本に書いてあるCommon Lisp版のソースでは文字列を使うのを避けていたが、Clojureで書くときは使ったほうが便利なので使用した。

2014-08-31

Land of LispのコードをClojureで書いてみる 第2章

積ん読状態になってたLand of Lispを読み始めた。
せっかくなので、Clojureに読み替えながら読んでいく。
まずは第2章の数当ゲーム。


最後までClojureに読み替えて読めるようにがんばる。