2009年5月24日日曜日

Common Lispを試してみる

触ってみたかったLisp。ちょっと始めてみました。
色んなLispがあるようなんですが、CommonLispというやつで。

まずは環境を整える。
私の場合、MacOSXなのでMacPortでいれました。

sudo port install rlwrap
sudo port install clisp


rlwrapというのを使うと、↑でのヒストリーバックが使えちゃって便利。
起動は以下で行ないました。

rlwrap clisp


終了は

> (bye)

と書けばOK.

今回はTextMateで書いて、

> (load "ファイル名")

で実行して試していたのですが、)が足りない というようなケアレスミスをした場合でもエラーが分かりにくい (見る人がみたら分かるのかもしんないけど)
なので、本格的に書いて行くのであればエディタの機能のHELPは必要そうだなぁー

Ready Lispというのがあって、AquaemacsにSBCL、SLIMEなどを入れてすぐに試せるようなものがありました。
インストールしてみました。直ぐにCommonLispのコマンド叩いて実行はできました。。。でも、どうやったらどんな風に便利になるのかが分からなかった(笑)
まずはEmacsのお勉強が必要そうです...(汗

でー、まだ初歩向けの記事を読みつつコマンド叩いてへー!ってやってるぐらいなんですが、ちょっと今混乱しているのが 関数とマクロ。
printってのは、関数ですよね?
loopってのは...これは 関数? マクロ?

何か書いて慣れてみてから、一通りの基礎が書いてある本でも一冊読み切ってみる必要があるなぁーって思うけども、どんなものに向いている言語なのか? どんなもの作るか? があんましまだイメージできてない。

今の所のイメージとしては、マクロをガンガン書いておいて、本来の処理を楽に書けるようにする...のがいい使い方? って思ったりしてるんですが..どうだろ?
となると、なにか...自社製品とかの開発のような長期間に渡って大量のコードを記述するようなものとかに向いているのかなぁ

...なんて考えつつ、これからどぅ勉強するかなぁ? もぅアプリ作りつつじゃないと頭に入んないや って思っていたら魔法言語 リリカル☆Lispなんてのを発見!
★「魔法言語 リリカル☆Lisp」はノベルゲーム風のLispチュートリアルです。 "アリサ"や"すずか"達と楽しくLispを学べます。 全12話構成で各話の最後には練習問題が用意されています。

あー なんて素敵♪
Windows用っぽいのが残念ですが....Windowsマシンに移動して見させて頂きますよー!
という事で次回はこのアプリを見てみることにしますデス。
• • •