A good explanation of the difference between define and set! in Scheme here: https://docs.scheme.org/schintro/schintro_16.html Silvain
Le 22.08.24 à 11:10, Valentin Petzel a écrit :
Hi Michael, the problematic line in question is (#t (define *use-gamba-clefs* #t)) If you use set! instead of define it will work. The problem here lies probably in the switch from guile 1.8 to guile 2. I suppose in that the context of case changed somehow to not allow definitions. Keep in mind that define is a bit special in LISP languages. LISP has a strong functionals base, and that means that we are in a paradigm where e.g. results should not depend on order of execution. This requires that a value bound by define is immutable. So LISP languages tend to be very restrictive of where you can put a define, and usually do not allow defining a mapping already bound.
-- Silvain Dupertuis Route de Lausanne 335 1293 Bellevue (Switzerland) tél. +41-(0)22-774.20.67 portable +41-(0)79-604.87.52 web: silvain-dupertuis.org <https://perso.silvain-dupertuis.org>
