Subject: Local variables not so local within block
From: Robert Dodier
Date: Tue, 24 Jul 2012 20:53:49 +0000 (UTC)
Stefano Ferri <ferriste <at> gmail.com> writes:
> Just tried some more complex code... I think it is not safe to
> substitute all blocks with blex now... For example, it makes a
> local prederror:true statement not working.
blex([a, b, c], ...) makes a, b, and c lexical variables, and
so it's not surprising blex([prederror:true], ...) has an unexpected
effect: prederror must be a non-lexical variable to get the
effect you want.
There is a little bit of fossil code for a declare(x, special)
declaration -- if lexical variables come to pass, we might want
to revive that.
Thanks for your interest -- if anyone else cares to comment,
I would be interested to hear about it. I am fairly naive about
the problems involved so I'd appreciate any guidance.
best
Robert Dodier