「Function」の版間の差分
編集の要約なし |
編集の要約なし |
||
(同じ利用者による、間の1版が非表示) | |||
7行目: | 7行目: | ||
: function 関数は、組み込み関数や defun 関数のように引数をリンクして最適化するよう Visual LISP コンパイラに指示する以外は、quote 関数と同じ。 | : function 関数は、組み込み関数や defun 関数のように引数をリンクして最適化するよう Visual LISP コンパイラに指示する以外は、quote 関数と同じ。 | ||
: function 関数によってシングル クォーテーションが付いたコンパイル済み lambda 式は、Visual LISP IDE にロードされたときにデバッグ情報を含む。 | : function 関数によってシングル クォーテーションが付いたコンパイル済み lambda 式は、Visual LISP IDE にロードされたときにデバッグ情報を含む。 | ||
; 引数 | ; 引数 | ||
12行目: | 13行目: | ||
:* lambda-expr : 次の形式の関数。 | :* lambda-expr : 次の形式の関数。 | ||
::: (LAMBDA arguments {S-expression}* ) | ::: (LAMBDA arguments {S-expression}* ) | ||
; 戻り値 | ; 戻り値 | ||
22行目: | 24行目: | ||
'(lambda (x) (* x x)) | '(lambda (x) (* x x)) | ||
'(1 2 3)) | '(1 2 3)) | ||
: 式に function 関数を追加すると、コンパイラは lambda | : 式に function 関数を追加すると、コンパイラは lambda 式を最適化できるようになる。次に例を示す。 | ||
(mapcar | (mapcar | ||
(function (lambda (x) (* x x))) | (function (lambda (x) (* x x))) |
2020年8月8日 (土) 22:30時点における最新版
- 構文
- (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))