Bonjour, so it is with the version i currently use which is older than you: (base) mattei@mbp-touch-bar library-FunctProg % guile GNU Guile 3.0.8.99-f3ea8 Copyright (C) 1995-2022 Free Software Foundation, Inc.
Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'. This program is free software, and you are welcome to redistribute it under certain conditions; type `,show c' for details. Enter `,help' for help. scheme@(guile-user)> (cond (#t (define x 7) x)) While compiling expression: Syntax error: unknown file:1:10: definition in expression context, where definitions are not allowed, in form (define x 7) thanks On Wed, May 22, 2024 at 10:07 PM Jeronimo Pellegrini <j...@aleph0.info> wrote: > Hello! > > On 2024-05-22 16:26, Damien Mattei wrote: > > scheme@(guile-user)> (cond (#t (define x 7) x)) > > While compiling expression: > > Syntax error: > > unknown file:7:10: definition in expression context, where definitions > > are > > not allowed, in form (define x 7) > > I get no error here (Guile 3.0.9.164-e1690, compiled locally): > > scheme@(guile-user)> (cond (else (define x 7) x)) > $1 = 7 > scheme@(guile-user)> (cond (#t (define x 7) x)) > $2 = 7 > > A: (cond (#t (define x 7) x)) > B: (cond (else (define x 7) x)) > > | system | A | B | > |-------------|-------|-------| > | Bigloo | 7 | 7 | > | Biwa | 7 | 7 | > | Chez | error | 7 | > | Chibi | error | 7 | > | Chicken | 7 | 7 | > | Cyclone | 7 | 7 | > | Gambit | error | error | > | Gauche | 7 | 7 | > | Guile | 7 | 7 | > | Kawa | 7 | 7 | > | LIPS | 7 | error | > | Loko | error | error | > | MIT | error | 7 | > | Racket | 7 | 7 | > | Sagittarius | 7 | 7 | > | Scheme48 | error | 7 | > | Scheme 9 | error | 7 | > | SCM | 7 | 7 | > | STklos | 7 | 7 | > | Tinyscheme | 7 | 7 | > > * LIPS does not recognise the 'else' clause. > > J. >