Linus Björnstam schreef op do 17-06-2021 om 14:57 [+0200]: > Guile already does definitions in expression context in > the bodies of lambda and let-variants. I think this is > not a big problem since any valid r6rs code is still valid guile. ‘Guile already does definitions in expression context in [...]’: good point. > The discussion is in my opinion whether guile's r6rs modules should > enforce this behaviour. That might be a good thing, even though we > will provide 2 cons and case forms to do that. Pro: if your code works when using r6rs modules (in Guile), then it should work on any r6rs-conforming implementation. Con: (@ (guile) cond) != (@ (rnrs base) cond), which can be surprising. Con: ‘I know this usage isn't universally portable, but I'll cross that bridge when needed. All the Scheme I care about do have this extension. If a Scheme doesn't have this extension, I'll just patch that Scheme (free software for the win!)’ Greetings, Maxime.