構造体を返す関数があるとします。
(struct layer (points lines areas))
(define (build-new-layer height)
...
(layer list-a list-b list-c))
最後に返された結果を次のように追跡したいと思います。
(define top-side (build-new-layer 0)) ; store the first result
...
(set! top-side (build-new-layer 0.5)) ; throw away the first result and store the new one
ただし、その特定のコードでは、次のエラーが発生します。
set!: assignment disallowed;
cannot modify a constant
constant: top-side
私がやりたいことをする正しい方法を教えてください