Thanks Bill and Christos, I'll chew on those and see how I make out!

iain

On Wed, Jul 29, 2020 at 1:43 PM <[email protected]> wrote:

> I'd use a dilambda, I think.
>
> (define my-state-thing
>    (let ((actual-state 'Maxwell))
>      (dilambda
>        (lambda (field)
>           ;; the "getter", so (my-state-thing :foobar) calls this
> function
>          actual-state)
>        (lambda (field new-value)
>           ;; the "setter", (set! (my-state-thing :foobar) new-value) call
> this
>          (set! actual-state new-value)))))
>
> You could also make my-state-thing a "let":
>    (define my-state-thing (inlet :foobar 99))
>
>
_______________________________________________
Cmdist mailing list
[email protected]
https://cm-mail.stanford.edu/mailman/listinfo/cmdist

Reply via email to