記事の内容
Lisp入門書である「Land of Lisp」の勉強メモ。
第2章の内容についてのまとめ。
プログラムを書く土台となる変数と関数の定義方法について学習。この記事にまとめてみる。
グローバル、ローカルな変数と関数
・グローバル変数の定義
(defparameter *small* 1)
グローバル変数名には、耳当てをつける慣習。
・基本的なlispのエチケット
(defparameter *small* 1)
コマンドをいちいち括弧に入れなければならない。
・グローバル関数の定義
(defun 関数名 (引数)
中身
)
Lispでプログラムを書いてるときは、わざわざ値を表示させるような関数を書くことは少ない。return式もいらない。
・ローカル変数の定義
(let (変数定義)
中身
)
・ローカル関数の定義
(flet ( (関数名 (引数)
関数本体))
本体)
最初に関数を定義し、この関数はfletの本体の中で使える。
labelsコマンド
ローカル関数の中で、同じスコープで定義されるローカル関数を使いたいとき。ローカル関数bの中で、ローカル関数aを使いたい。ローカル関数が自分自身を呼ぶ場合にも使える。再帰に使える。
コマンドまとめ
・defparameter
・defun
・let
・flet
・labels
関連記事