Common Lisp

ファイルの読み込み

Common Lispでファイルの読み込み。 例によって実践Common Lispから。 基本的なファイルの読み込みは以下の様になる。 CL-USER> (let ((in (open "/home/hironemu/test.txt" :if-does-not-exist nil))) (when in (loop for line = (read-line in nil) while …

Common Lispのハッシュテーブル

例によって、実践Common Lispを読みちゅう。11章でようやくリストの説明がはじまった。と思ったらまだだった。12章からみたい。著者としてはLispはリストだけじゃないんだよってことを言いたいらしい。実践Common Lispposted with amazlet at 09.04.09Peter …

Common Lispの色々なループ

例によって、実践Common Lispで勉強中です。マクロの話に入る前にループの話が出てきたので忘れないうちにやっておく。実践Common Lispposted with amazlet at 09.03.23Peter Seibel オーム社 売り上げランキング: 131799Amazon.co.jp で詳細を見る第7章で出…

Common Lispの関数で色々な引数

Common Lispではいろいろな引数の渡し方がある。下の例は普通の関数の定義。 普通の関数 CL-USER> (defun foo (a b c d) (format t "a=~a b=~a c=~a d=~a" a b c d)) FOO CL-USER> (foo 1 2) ; 引数が足りない ; Evaluation aborted. CL-USER> (foo 1 2 3) ;…

Common Lispのイコール(eq eql equal equalp)

どの言語にも2つの値(オブジェクト)が等しいかどうかという判断が必ずあると思う。例えばxとyの値が等しいかどうかっていう処理はよくでてくるはずである。当然Common Lispにもその判断を行うための方法が用意されていて、Common Lisptでは「EQ、EQL、EQUAL…

はじめてのCommon Lisp

この間から実践Common Lispという本を買ってきて、Common Lispの勉強を始めました。 第1章はCommon Lispとはどんな言語?という説明、第2章は開発環境についてとHello Worldを作ってみるところまで。 で、第3章からはいきなり「実践:簡単なデータベース」っ…

EmacsでCommon Lispのコンパイルが・・・

Emacsと打とうとすると、Eclipseと書こうとする。今日この頃。 昨日はEmacs+SLIMEでCommon Lisp環境を作ったので、この調子でさくさくっと進むかと思ったら、ダメでした。 ファイルを作成して、コンパイルしようとしたんだけど、なんかコマンドがないって怒…

Emacs + SLIMEでCommon Lisp環境を整える

Ubuntu8.10にEmacsとCommon Lispの開発環境をセットアップする方法をcametanさんに教えてもらったので早速インストール! まず、Emacsのインストール [システム]→[システム管理]→[日本語セットアップヘルパ]を起動し、「emacs-env-ja」にチェックを入れる。(…

実践Common Lispを買った

cametanさんに教えてもらったCommon Lisp本を買ってきました。 著者(Peter Seibel氏)の経歴がおもしろい。 まず父親がLisper(笑 著者はPerlでNIKEのオンラインショップを作ったりしていたらしい、その後なんとWebLogicの初期開発メンバーとして働いていたそ…