[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: another take on hackers and painters



>>>>> "Lauri" == Lauri Alanko <la@iki.fi> writes:

Lauri> The real challenge is making eval'ed code interact with the
Lauri> runtime environment of the host program:

Lauri> (define x 'foo)
Lauri> (eval '(set! x 'bar))
Lauri> x
Lauri> ==> bar 

Lauri> And this is non-trivial to do safely in a statically typed language.

That's non-trivial to do safely in *any* language.  Specifically, the
above code fragment isn't legal in R5RS.  Even if you added
(interaction-environment) as an operarand, the behavior would still be
unspecified.

-- 
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla