Special Operator MULTIPLE-VALUE-PROG1
multiple-value-prog1
first-form form* => first-form-results
first-form - フォーム。下記に示す通り評価されます。
form - フォーム。下記に示す通り評価されます。
first-form-results - first-formの評価の返却値
multiple-value-prog1
はfirst-formを評価し、 そのフォームによって生成された全ての多値を保存します。 そのあと各formを左から右へ評価し、それらの返却値を廃棄します。
setq temp '(1 2 3)) => (1 2 3)
(multiple-value-prog1
(values-list temp)
(setq temp nil)
(values-list temp)) => 1, 2, 3 (
なし。
なし。
なし。
なし。