One thing I forgot to point out: notice that, in the latest PS, the minus operator '- is actually converted into an empty string in JS, which is obviously wrong.<br><br><div class="gmail_quote">On Wed, May 6, 2009 at 2:27 PM, Daniel Gackle <span dir="ltr"><<a href="mailto:danielgackle@gmail.com" target="_blank">danielgackle@gmail.com</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">The latest PS interprets QUOTE of a symbol to mean, "first convert this symbol to a Javascript identifier, then a string". This breaks our code, because our formula parser relies on symbols to represent operators. Here's a line of code that PS was generating for us nicely before:<br>




<br>(defparameter *op-symbols* '(| | + - * / ^ < > = <> <= >= & % ! { } [ ] |(| |)| |:| |,| |"| |'|))<br>=><br>var OPSYMBOLS = [' ', '+', '-', '*', '/', '^', '<', '>', '=', '<>', '<=', '>=', '&', '%', '!', '{', '}', '[', ']', '(', ')', ':', ',', '"', '\''];<br>




<br>In the new PS, it looks like this:<br><br>var OPSYMBOLS = [' ', 'plus', '', 'star', 'slash', '^', '<', '>', 'equals', '<>', '<equals', '>equals', '&', 'percent', 'bang', '{', '}', '[', ']', '(', ')', 'colon', ',', '"', '\''];<br>



<br>I think this is a mistake. The only reason for translating symbols like + to "plus" is if you want to use them in a JS identifier. But quoted symbols are not meant to turn into JS identifiers, only JS strings.<br>



<br>Looking at the git log, this change was introduced into special-forms.lisp by commit dd4442b8973fe8b2c19b44f94f244934aa418ae8. This was submitted at the time as a bug fix. From our point of view, this "fix" introduces a bug, and quite a serious one, since it means we can't run our formula parser (and a few other things) in the browser.<br>


<font color="#888888">
<br>Daniel<br>
<br><br>
</font></blockquote></div><br>