:は、Lisp - 私はlispのGCLでこのような何かをしたいのsetqと車
(setq (car '(a 1)) (cdr '(a 1)))
の結果を得るために:
(setq a 1)
はこの、またはこの可能性のようなものですか? よろしくお願いします。Declan
:は、Lisp - 私はlispのGCLでこのような何かをしたいのsetqと車
(setq (car '(a 1)) (cdr '(a 1)))
の結果を得るために:
(setq a 1)
はこの、またはこの可能性のようなものですか? よろしくお願いします。Declan
はい、可能です。 Common Lispはエコシステム全体を持ち、プログラムの実行中にあらゆる種類のことをコンパイルして実行できます。
(setq test value)
はもともとは(set 'test value)
に変わったマクロでした。 set
は廃止されましたが、削除される予定はありません。今
(set 'test 'a)
(set test 10)
a ; ==> 10
、setq
はあなたが欲しかったあなたは、変数の名前、時間の99.99%以来少し引用符を忘れないでください、あなたが不足している引用符を探すために半日デバッグする必要がないことを確認します。
しかし、 'set'は特別な変数に対してのみ機能することに注意してください。 '' let((x 1))(set 'x 2)x) 'は' 1'に評価されますが 'x'の' 'symbol-value''は' 2'に設定されます。 – tfb
'a'は変数(レキシカルo特別)の名前が既に定義されていますか?それとも未定義ですか? – Renzo
なぜこれをやりたいですか?代わりにハッシュテーブルを使用してみませんか? – uselpa
他のすべての問題に加えて、 'cdr'ではなく' cadr'をここで使いたいと思っています。 –