[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