The following bug in PS broke my code today:<br><br>  (ps (aref (if (and x (> (length x) 0))<br>              (aref x 0)<br>              y)<br>              z))<br>  => "x && x.length > 0 ? x[0] : y[z];"<br>
<br>Obviously, this should be:<br><br>  (x && x.length > 0 ? x[0] : y)[z]<br><br>You can see a similar bug here:<br><br>  (ps (aref (or (slot-value x 'y)<br>              (slot-value a 'b))<br>              z))<br>
  => "x.y || a.b[z];"<br><br>and here again:<br><br>  (ps (- (if x y z)))<br>  => "-x ? y : z;"<br><br>Clearly, there's a problem with not parenthesizing things. <br><br>Since the last patch or two I've sent have been ignored, I won't send a new one here, but rather ask: is PS being actively maintained or not? This project is too valuable to let fade.<br>
<br>Dan<br>