Question

I am using DrScheme to write a Scheme interpreter. I define a Read Eval Print Loop and I am re-defining the eval procedure. This works fine in other scheme implementations like Chez Scheme, but I don't like the code editing in Chez Scheme, so I would like to use DrScheme for this.

When I make a definition such as: (define (eval exp env) (cond ...)) It says: define-values: cannot change constant identifier: eval

Is there a way to override that and let me change constant identifiers? I'd prefer not to have to rename all my variables to get around this.

Was it helpful?

Solution

It turns out there are options per each language and one of them is "Disallow redefinition of initial bindings" which can be unchecked.

OTHER TIPS

You're probably using the "Pretty Big" language. Switch to "Module", and you can do it.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top