「Function」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
(ページの作成: ; 構文 : (function ''symbol'' | ''lambda-expr'') ; 機能 : 組み込み関数のように引数をリンクして最適化するよう、Visual LISP に指示する。 : fu…)
 
編集の要約なし
23行目: 23行目:
   '(1 2 3))
   '(1 2 3))
: 式に function 関数を追加すると、コンパイラは lambda 式を最適化できるようになる。次に、例を示す。
: 式に function 関数を追加すると、コンパイラは lambda 式を最適化できるようになる。次に、例を示す。
(mapcar
(mapcar
(function (lambda (x) (* x x)))
  (function (lambda (x) (* x x)))
'(1 2 3))
  '(1 2 3))




[[Category:AutoLISP]]
[[Category:AutoLISP]]

2010年2月19日 (金) 13:17時点における版

構文
(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))