私はいくつかのSchemeコードをCommon Lispに変換しています。私はスキームを知らない。私はCommon Lispのことを少し知っています。関数にバインドされたScheme定数を同等のCommon Lispに変換する
まず、Schemeコードは、変数を定義する(またはそれが一定である?)、その値が関数の名前である:
(define (alert-propagators propagators)
...)
関数:ここ
(define alert-propagator alert-propagators)
関数であります定数を参照することによって間接的に呼び出されます。
(alert-propagator arg)
これはかなり滑らかです。
これはCommon Lispでも可能でしょうか?まず、私は定数を定義し、関数にバインドさ::ここに私が試したものだ
(defun alert-propagators (propagators)
...)
ファイン:
(defconstant alert-propagator #'alert-propagators)
は、その後、私は機能を定義しました。
しかし、今、間接的に(一定の経由)関数を呼び出すために、私はfuncallのを使用する必要があります。
(funcall alert-propagator arg)
私は敗北のようなもの定数(抽象化)を定義するの全体の目的だと思います。私が本当に欲しいのは、単純に書くことができることです:
(alert-propagator arg)
Common Lispでこれを達成する方法はありますか?
本当に異常な - ありがとう@Sylwester! –
@RogerCostelloよろしくお願いします。:-) – Sylwester