Next: 5.3 コンパイル compile
Up: 5 Lispの処理
Previous: 5.1 Lispインタプリタ
関数定義の集合でプログラムを作りますが,そのプログラムは
ファイルに書いておき,そのファイルをLisp処理系へloadする
ことでプログラムを読み込んだことになります.
たとえば,test.lというファイルに,
;;
;; 関数定義ファイルの例
;;
(defun test (n)
(+ (fib n) (fact n))
)
(defun fib (n)
(if (< n 2) 1
(+ (fib (1- n)) (fib (- n 2)))))
(defun fact (n)
(if (< n 2) 1
(* n (fact (1- n)))))
という具合に定義されていたとして,次のように
loadを行います.そして,test.lの中に入っている
関数定義された関数fibやfactを実行することが
できます.
USER(34): (load "test.l")
; Loading e:\home\inaba\prog\lisp\cl\test.l
T
USER(37): (test 5)
128
USER(26): (fib 5)
8
USER(27): (fib 10)
89
USER(28): (fib 19)
6765
USER(29): (fact 5)
120
USER(30): (fact 10)
3628800
USER(31): (fact 19)
121645100408832000
この例は,AllegroCommonLispを使った例で,USER(xx): がプロンプトです.
このプロンプトに対して式を入力すると,式の計算結果が画面に表示されます.
generated through LaTeX2HTML. M.Inaba 平成18年5月7日