Function

提供:GizmoLabs - だいたい CAD LISP なサイト
2020年8月8日 (土) 22:30時点におけるGizmon (トーク | 投稿記録)による版
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
構文
(function symbol | lambda-expr)


機能
組み込み関数のように引数をリンクして最適化するよう、Visual LISP に指示する。
function 関数は、組み込み関数や defun 関数のように引数をリンクして最適化するよう Visual LISP コンパイラに指示する以外は、quote 関数と同じ。
function 関数によってシングル クォーテーションが付いたコンパイル済み lambda 式は、Visual LISP IDE にロードされたときにデバッグ情報を含む。


引数
  • symbol : 関数名のシンボル。
  • lambda-expr : 次の形式の関数。
(LAMBDA arguments {S-expression}* )


戻り値
評価した式の結果。


サンプル
Visial LISP コンパイラは、次のコード内のシングル クォーテーション付き lambda 式を最適化することはできない。
(mapcar
  '(lambda (x) (* x x))
  '(1 2 3))
式に function 関数を追加すると、コンパイラは lambda 式を最適化できるようになる。次に例を示す。
(mapcar
  (function (lambda (x) (* x x)))
  '(1 2 3))