読み書きプログラミング

日常のプログラミングで気づいたことを綴っています

制約プログラミング

どうも鈍くていけません。
何年か前のInternational Conference on Creating, Connecting, and Coolaborating through ComputingのSqueak Birds of a Featureで、制約プログラミングをさりげなく使ったスプレッドシードのデモを見せていただいて以来、より仕様に近いコーディング表現のためには制約記述は必須だよなと思っていて、Thinglabとか触ってみたりはしたのですが、最近仕事で、Maxima連立方程式微分方程式を解かしているのが、制約プログラミングをしていたのだと気がつきました。(コンパイラインタープリタか問わず)制約プログラミングのランタイムシステム=ソルバなんですね。
そう思うと、ソルバをライブラリと考えるか言語仕様と考えるかという問題になるので、第一感はライブラリかなと思いました。解かせるには、解かせるタイミングとその時の独立変数を指定する必要があるので、そのためにはライブラリのコールをプログラマが明示的に指定する必要があるから。
もう一度、Thinglabを眺めてみよう。