SWI-PrologをC言語から叩く 

2012年1月8日

7つの言語 7つの世界」の3つ目の言語がPrologなんですけど、触ってみると結構面白くて、とりあえずの感想としてはルールの表現力がハンパ無く高いなという事です。良く例で挙げられていますが、数独を解いたり、麻雀の手役を確認したりといった、一定のルールに基づいた処理を他の言語と比べてかなり楽に書けそうです。

これはちょっと習得しておきたいなと思うものの、上述のような特定の処理以外は他の言語と比べてあまりに貧弱です。今回使用した処理系の標準ライブラリはこれだけしかありません。

なので必要に応じてPrologを別の言語から使うという方が現実的なのかなということで、とりあえずPythonインターフェースを試したのですが、動かなかったので仕方なしにC言語から使ってみる事にしました。なお処理系はSWI-Prologというのを使う事にしました。(手元だとGNU Prologが日本語で文字化けを起こしました。)

この投稿の続きを読む »

OSXのdylibを作ってみる 

2012年1月7日

OSXで共有ライブラリを触ったことがなかったので、試しにdylibを作ってみました。Linuxだと.soですがOSXだと.dylibのようですね。フォーマットの差異については調べていません。Appleの「Dynamic Library Programming」というドキュメントのさわりだけ参考にしました。

この投稿の続きを読む »

[読書感想文] ねじまき鳥クロニクル 

2011年12月25日

城崎へ向かう前に立ち寄った書店で、ふと本書を読み切っていない事を思い出した。中学生の頃に少しだけ読んでほったらかしていたのだ。村上春樹コーナーで見つけ出したときに本書が三部作の長編で合計1400ページもある事に気づいたが、それはむしろ都合が良かった。何しろ城崎までは片道3.5時間もあるのだ。

この投稿の続きを読む »

django.utils.functionalを読んだメモ 

2011年12月21日

django関連のコードを読んでいて、django.utils.functionalというモジュールが目につきました。中を見るとカリー化や遅延評価など聞いたは事あるものの、いまいちピンとこなかったので、調べた事のメモ書きを残しておきます。

この投稿の続きを読む »

「7つの言語 7つの世界」2週目 Io 

2011年12月18日

7つの言語 7つの世界」2週目です。Ioです。2週目とか言いながら、Rubyやってから6週間も経ってしまいました。インストールが手強かったので仕方がないのです。

さて本書で、Ioは「フェリスはある朝突然に」という映画のフェリス・ビューラーという役柄に例えられています。やっぱりこの映画も見た事無いのですが、型破りで予測不可能なキャラクターの様です。

この投稿の続きを読む »