Alloyを使ってみた。 数年前に使ったときはなんでこんなの使うのと思っていたけど考えが変わったのだ。 ちょっとした規模のプログラムを書くには設計が必要だ。 コードを書く前に、問題の本質的な部分を知っておこう。 本質がわかっていれば、 適切な部分にモジュール分割したり、適切なライブラリを選択したり、アルゴリズムを書いたりできるはずだ。 もちろんお絵描きツールでもいいのだけど、動いたりチェックしたりできれば、設計で得られる知見はより多くなるはず。 述語論理で書くけれど、モデルが絵になるのが直感的でよい サクサク設計するために Alloy が使えないか ? Alloyについて Alloy は 一階述語論理でモデルを書く。 だから概念は Prolog に近いかもしれない。 いわゆる公理的意味論というやつだ。 が書ける述語はホーン節に限らず自由である。 モデルと制約を自由に書ける。 そのかわり?
![Alloyでパックマン - keigoiの日記](https://cdn-ak-scissors.b.st-hatena.com/image/square/896b331320f9c93100f63437385951522c5726f9/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fs%2Fsyd_syd%2F20090210%2F20090210150353.png)