<div>When PS hoists the declaration of a variable, it should probably check for duplicates:</div><div><br></div><div><div><font class="Apple-style-span" face="'courier new', monospace">(ps (defun blah ()</font></div>

<div><font class="Apple-style-span" face="'courier new', monospace">      (list (let ((foo 12)) (* foo 2))</font></div><div><font class="Apple-style-span" face="'courier new', monospace">            (let ((foo 13)) (* foo 3)))))</font></div>

<div>    </div><div>=></div><div>                  </div><div><font class="Apple-style-span" face="'courier new', monospace">"function blah() {</font></div><div><font class="Apple-style-span" face="'courier new', monospace">    var foo;</font></div>

<div><font class="Apple-style-span" face="'courier new', monospace">    var foo;</font></div><div><font class="Apple-style-span" face="'courier new', monospace">    return [(foo = 12, foo * 2), (foo = 13, foo * 3)];</font></div>

<div><font class="Apple-style-span" face="'courier new', monospace">};"</font></div></div><div><br></div>