何が起こっているのかを明確にするために、他の簡単なコードを投稿しました
eval
次のコードで使用すると
#lang racket
(define (test )
`( (define num 1)
(define l (list))
(define num2 (add1 num))
(displayln num2)))
(eval (test) (make-base-namespace))
ラケットが私に向かって叫ぶdefine-values: not in a definition context in: (define-values (num) 1)
私の質問は次のとおりです。
- 定義に
eval
取り組むには? - 定義で機能するように設計されていない場合
eval
、それを機能させる回避策はありますか?
どんな助けにも感謝します!
これは、ここでやりたいことの別の方法かもしれないと思います: How can I unsplice a list of expression into code?