How do you define a constant in PLT Scheme?
racket, scheme
Solution
As far as I know, this isn't possible in Scheme. And, for all intents and purposes, it's not strictly necessary. Just define the value at the toplevel like a regular variable and then don't change it. To help you remember, you can adopt a convention for naming these kinds of constants - I've seen books where toplevel variables are defined with `*stars*` around their name.
In other languages, there is a danger that some library will override the definition you've created. However, Scheme's lexical scoping coupled with PLT's module system ensure this will never happen.
Problem
How do I declare that a symbol will always stand for a particular value and cannot be changed throughout the execution of the program?