Unfortunately, the "in" macro fails to work with local bindings, so the code:
(let ((z 0)) (in o (set! a z))) woudn't work, because primitive-eval doesn't catch the environment from the current context. I've tried to replace it with (eval ... (interaction-environment)), but it still fails. Also (local-eval ... (the-environment) didn't seem to work. If anyone has any idea how to cope with that, please help. Or perhaps there is a better way to handle these slot references? Any ideas? Regards M.