2014-04-01から1ヶ月間の記事一覧
ノート 明らかにquery evaluatorは何らかの探索を行う。 一つの方法は非決定論的プログラミングでambを使った実装。もう一つはストリームを使う実装。(ここではストリームで実装する) query systemは大きく分けて二つの操作からなる:パターンマッチと単一…
Nondeterministic Computingで少し雰囲気を感じつつ、ついに論理プログラミングに到達。 第5章はまた毛色が違う話なので、ここが一つの到達点なのかな。 ノート 数学はdeclarative(宣言的)、コンピュータサイエンスはimperative(命令的)。 高級言語にな…
ここで漸く実装部分。 ノート 普通のschemeの式であれば値が返るか、永久に返って来ないか、エラーで止まる。非決定論的schemeではそれに加えて行き止まりに辿り着いた時に選択ポイントまで戻って評価をやり直すと言う動作が追加される。 バックトラックを実…
ノート 非決定論的プログラムの例。 組み合わせ生成とフィルタリングする部分をシステム側に隠す事で、プログラムはより抽象化されて問題をストレートに表現出来る。 Logic Puzzles 『ニコリ』の推理パズル。 プリミティブにequal?を足してmemberを定義。abs…