argius note

プログラミング関連

Cusp - Lispプラグイン

Emacs(+SLIME)はちょっと...という人は、EclipseプラグインのLisp開発環境をどうぞ。
ただし、ちょっと不安定かも知れませんのでご了承下さい。


下記URLのアップデートサイトを利用します。新しいアップデート機能(3.3.x以降の?3.4.x以降の)に対応しておらず、古いアップデート機能を起動するかどうか確認されます。
なお、SBCLがプラグインの一部としてインストールされます。


インストールが終わって、再起動したら、

  • Menu:File→New→Project→Lisp Project

Lispプロジェクトを作ります。とりあえず、全てデフォルトで作りましょう。"new-lisp1"というプロジェクトが作成され、その下に、3つのlispファイルと1つのasdファイルが作成されます。
まず、"new-lisp1"プロジェクトを右クリックして、"Load Project"を実行します。これで、プロジェクトがLisp実行環境にロードされました。
次に、"main.lisp"ファイルを開くと、すでに"main"という関数が書かれています。これはスルーして、この下に

(defun square (x)
  (* x x))
(defun quadruplicate (x)
  (square (square x)))
(defun eighth-power (x)
  (quadruplicate (quadruplicate x)))

と書いて保存します。そして、

  • Menu:Lisp→Compile File (Alt+K)

を実行すると、追加したコードがコンパイルされます。(※パッケージがロードされていれば、ここではコンパイル不要?)
REPLペインの下側の入力エリアに、

(eighth-power 2)

と入力してENTERまたはSendボタンを押すと、上側のテキストエリアに

new-lisp1>
(eighth-power 2)

65536

と表示されます。

エラーが出たら、デバッガに入るか抜けるか聞かれますので、↑↓で選択してENTERで決定します。今のところ、"1"を選ぶのが良さそうです。"3"を選んだ場合は、"RECONNECT"して"Load Project"からやり直しになります。

所感

初心者の学習向けには十分かと思います。また、パッケージ分割がデフォルトになっている点など、そこそこ大規模な開発も想定されているようです。
エディタからREPLにジャンプなど、キーボードだけで操作できないようなので、それがちょっと残念ですね。
改行やインデントが自動になっていると、ぐっと楽になりそうです。もしくは、フォーマット機能でも可。

参考

以下の情報はちょっと古めですので、バージョンの違いなどにご注意ください。