[parenscript-devel] Bug: lexical renames wrongly extended to CREATE special form
Clinton Ebadi
clinton at unknownlamer.org
Fri Oct 9 20:54:33 UTC 2009
Daniel Gackle <danielgackle at gmail.com> writes:
> In this example, the CREATE form is being expanded incorrectly, because the
> symbol A passed to it is not a reference to either of the lexical variables in
> scope.
>
> (ps (let ((a 99))
> (let ((a 22))
> (create a 33))))
>
> =>
>
> "var a = 99;
> var a666 = 22;
> { a666 : 33 };"
This works on my branch.
Lexical renaming is implementing in a very wrong way in the main
parenscript branch (by abusing symbol macros). I have introduced a
js:let syntax form and perform renaming at print time instead. The
implementation is significantly shorter and works for all cases.
http://git.hcoop.net/?p=clinton/parenscript.git;a=summary
--
Lindsay (Carlton): nighttime baker! sounds a little iffy
More information about the parenscript-devel
mailing list