clinton/parenscript.git
15 years agoAdded destructuring lists to PS-LOOP.
Daniel Gackle [Sun, 12 Apr 2009 19:49:41 +0000 (12:49 -0700)]
Added destructuring lists to PS-LOOP.

15 years agoRemoved some unnecessary code that ignored an anaphor in define-ps-special-form ...
Vladimir Sedach [Mon, 13 Apr 2009 04:35:15 +0000 (22:35 -0600)]
Removed some unnecessary code that ignored an anaphor in define-ps-special-form (declare (ignorable sufficed.

15 years agoChanged representation of expression blocks and 'if' to look more like JS in intermed...
Vladimir Sedach [Mon, 13 Apr 2009 04:33:29 +0000 (22:33 -0600)]
Changed representation of expression blocks and 'if' to look more like JS in intermediate code.

15 years agoMerge branch 'master' of ssh://vsedach@common-lisp.net/project/parenscript/public_htm...
Vladimir Sedach [Sun, 12 Apr 2009 23:17:31 +0000 (17:17 -0600)]
Merge branch 'master' of ssh://vsedach@common-lisp.net/project/parenscript/public_html/git/parenscript

15 years agoRemoved 'append' from runtime lib since Daniel Gackle provided a more concise macro...
Vladimir Sedach [Sun, 12 Apr 2009 23:16:12 +0000 (17:16 -0600)]
Removed 'append' from runtime lib since Daniel Gackle provided a more concise macro version in 83a26b36c.

15 years agoAdded a file PS-DOM with handy utility macros for DOM functionality, e.g. Lispy ways...
Daniel Gackle [Sun, 12 Apr 2009 06:51:27 +0000 (23:51 -0700)]
Added a file PS-DOM with handy utility macros for DOM functionality, e.g. Lispy ways of accessing offsetWidth, offsetHeight, etc.

15 years agoAdded several new utility macros, including a primitive DESTRUCTURING-BIND.
Daniel Gackle [Sun, 12 Apr 2009 06:15:41 +0000 (23:15 -0700)]
Added several new utility macros, including a primitive DESTRUCTURING-BIND.

15 years agoModified the way the PS-LOOP does SUM (it now gensyms an accumulation var rather...
Daniel Gackle [Sun, 12 Apr 2009 05:12:51 +0000 (22:12 -0700)]
Modified the way the PS-LOOP does SUM (it now gensyms an accumulation var rather than accepting INTO) and added COLLECT to work the same way.

15 years agoAdded a macro WITH-LAMBDA that's useful for wrapping one or more statements up into...
Daniel Gackle [Sun, 12 Apr 2009 05:11:55 +0000 (22:11 -0700)]
Added a macro WITH-LAMBDA that's useful for wrapping one or more statements up into an expression.

15 years agoUpdated tests to reflect changes in latest patches from Daniel Gackle.
Vladimir Sedach [Sun, 12 Apr 2009 02:25:18 +0000 (20:25 -0600)]
Updated tests to reflect changes in latest patches from Daniel Gackle.

15 years agoFixed 'lisp' form to produce code that captures enclosing lexical scope correctly...
Vladimir Sedach [Sun, 12 Apr 2009 01:57:19 +0000 (19:57 -0600)]
Fixed 'lisp' form to produce code that captures enclosing lexical scope correctly in 'ps' macro (broke it in my previous patch 0ce67a33), added unit tests to check for expansion in correct environment.

15 years agoExported 'loop' from Parenscript package, moved utility functions to src/utils.lisp.
Vladimir Sedach [Sun, 12 Apr 2009 01:56:46 +0000 (19:56 -0600)]
Exported 'loop' from Parenscript package, moved utility functions to src/utils.lisp.

15 years agoUpdated tests to reflect changes in latest patches from Daniel Gackle.
Vladimir Sedach [Sun, 12 Apr 2009 02:25:18 +0000 (20:25 -0600)]
Updated tests to reflect changes in latest patches from Daniel Gackle.

15 years agoFixed 'lisp' form to produce code that captures enclosing lexical scope correctly...
Vladimir Sedach [Sun, 12 Apr 2009 01:57:19 +0000 (19:57 -0600)]
Fixed 'lisp' form to produce code that captures enclosing lexical scope correctly in 'ps' macro (broke it in my previous patch 0ce67a33), added unit tests to check for expansion in correct environment.

15 years agoExported 'loop' from Parenscript package, moved utility functions to src/utils.lisp.
Vladimir Sedach [Sun, 12 Apr 2009 01:56:46 +0000 (19:56 -0600)]
Exported 'loop' from Parenscript package, moved utility functions to src/utils.lisp.

15 years agoRestored the old psmacro for LISP evaluation, because the new special form wasn't...
Daniel Gackle [Sat, 11 Apr 2009 22:55:05 +0000 (15:55 -0700)]
Restored the old psmacro for LISP evaluation, because the new special form wasn't working.

15 years agoWhen turning a quoted list into a JS array, compile elements that are NIL as "null...
Daniel Gackle [Sat, 11 Apr 2009 22:51:29 +0000 (15:51 -0700)]
When turning a quoted list into a JS array, compile elements that are NIL as "null", not "[]". There is no way to make JS completely consistent with Lisp here, because NIL means two different things in JS (null or an empty list) where it means only one thing in Lisp. We have to pick one thing in this context, and "[null]" is more common than "[[]]".

15 years agoQuoted symbols should be emitted as literal strings, not converted first to JS symbol...
Daniel Gackle [Sat, 11 Apr 2009 22:48:02 +0000 (15:48 -0700)]
Quoted symbols should be emitted as literal strings, not converted first to JS symbols, otherwise symbols with characters like * and ? will be emitted as "star" and "what", which makes sense only if you're trying to define a function or variable name, but not if you're generating arbitrary strings.

15 years agoGenerate "[]" rather than "new Array()" for concision.
Daniel Gackle [Sat, 11 Apr 2009 22:47:17 +0000 (15:47 -0700)]
Generate "[]" rather than "new Array()" for concision.

15 years agoChanged PS-LOOP to emit DO* (i.e. normal JS for-loop code) rather than DO. It was...
Daniel Gackle [Sat, 11 Apr 2009 22:40:30 +0000 (15:40 -0700)]
Changed PS-LOOP to emit DO* (i.e. normal JS for-loop code) rather than DO. It was originally written when DO meant DO* (in today's terms). Using DO here makes the generated code slower and breaks a bunch of our existing cases. Also, DO* produces more idiomatic JS code and should be the default case (there is unfortunately no single default here that gives all the desired behavior, but this is a better tradeoff).

15 years agoUse WITH-OUTPUT-TO-STRING instead of CONCATENATE, because the latter fails when there...
Daniel Gackle [Sat, 11 Apr 2009 22:39:31 +0000 (15:39 -0700)]
Use WITH-OUTPUT-TO-STRING instead of CONCATENATE, because the latter fails when there are too many arguments (this happens in Clozure more often than SBCL).

15 years agoModified the PS compiler to produce an intermediate representation that looks like...
Vladimir Sedach [Tue, 7 Apr 2009 02:46:19 +0000 (20:46 -0600)]
Modified the PS compiler to produce an intermediate representation that looks like raw JavaScript in s-exp notation.

Removed the doeach macro.

15 years agoChanged tests to reflect Daniel Gackle's keyword arguments patch.
Vladimir Sedach [Mon, 6 Apr 2009 00:16:17 +0000 (18:16 -0600)]
Changed tests to reflect Daniel Gackle's keyword arguments patch.

15 years agoInitialize keyword arguments from js ARGUMENTS, allowing keywords to also be passed...
Daniel Gackle [Thu, 2 Apr 2009 22:05:28 +0000 (15:05 -0700)]
Initialize keyword arguments from js ARGUMENTS, allowing keywords to also be passed as normal function arguments without an error being thrown.

15 years agoAdded a partial implementation of LOOP to PS.
Daniel Gackle [Thu, 2 Apr 2009 04:01:03 +0000 (21:01 -0700)]
Added a partial implementation of LOOP to PS.

15 years agoMade the ignore declaration in define-ps-special-form be generated on the condition...
Vladimir Sedach [Sun, 5 Apr 2009 23:50:15 +0000 (17:50 -0600)]
Made the ignore declaration in define-ps-special-form be generated on the condition that 'expecting is used in the body. While it's not an error to use variables previously declared ignored, it does raise annoying compiler warnings in some Lisps.

15 years agoRemoved compile-time constant string concatenation from the Parenscript printer,...
Vladimir Sedach [Sat, 4 Apr 2009 22:39:15 +0000 (16:39 -0600)]
Removed compile-time constant string concatenation from the Parenscript printer, which was significantly slowing down compilation.

15 years agoChanged the definition of define-ps-special-form to make "expecting" an anaphor.
Vladimir Sedach [Tue, 31 Mar 2009 19:36:32 +0000 (13:36 -0600)]
Changed the definition of define-ps-special-form to make "expecting" an anaphor.

15 years agoChanged the implementation of quote from being special cased in several Parenscript...
Vladimir Sedach [Tue, 31 Mar 2009 00:42:31 +0000 (18:42 -0600)]
Changed the implementation of quote from being special cased in several Parenscript internal functions to a Parenscript macro. This makes the code simpler and allows for extensibility of how quoted forms are translated. One example is quoted strings being translated to JavaScript array literals.

15 years agoRenamed *html-empty-tag-aware-p* to *ps-html-empty-tag-aware-p* and *html-mode* to...
Vladimir Sedach [Thu, 12 Mar 2009 08:07:39 +0000 (02:07 -0600)]
Renamed *html-empty-tag-aware-p* to *ps-html-empty-tag-aware-p* and *html-mode* to *ps-html-mode* to not clash with CL-WHO symbols, but still follow the same naming convention.

15 years agoRemoved tutorial.lisp from repository (it is now updated and placed online in HTML...
Vladimir Sedach [Thu, 12 Mar 2009 08:04:06 +0000 (02:04 -0600)]
Removed tutorial.lisp from repository (it is now updated and placed online in HTML format: common-lisp.net/project/parenscript/tutorial.html)

15 years agoChanged ps-html generators to behave more like CL-WHO when it comes to XML/SGML,...
Vladimir Sedach [Fri, 6 Mar 2009 04:38:08 +0000 (21:38 -0700)]
Changed ps-html generators to behave more like CL-WHO when it comes to XML/SGML, self-closing/empty tags. Changed the name of *self-closing-tags-p* flag to *html-empty-tag-aware-p*, added *html-mode* parameter.

15 years agoRegenerated reference-tests.lisp from reference doc with latest changes.
Vladimir Sedach [Fri, 6 Mar 2009 04:37:00 +0000 (21:37 -0700)]
Regenerated reference-tests.lisp from reference doc with latest changes.

15 years agoRewrote some unit tests to simplify code.
Vladimir Sedach [Fri, 6 Mar 2009 03:09:54 +0000 (20:09 -0700)]
Rewrote some unit tests to simplify code.

15 years agoAdded ps-doc* function to PS compilation interface.
Vladimir Sedach [Fri, 6 Mar 2009 03:09:21 +0000 (20:09 -0700)]
Added ps-doc* function to PS compilation interface.

15 years agoAdded example of closure symbol-map usage for obfuscate-package in reference doc.
Vladimir Sedach [Fri, 6 Mar 2009 03:08:00 +0000 (20:08 -0700)]
Added example of closure symbol-map usage for obfuscate-package in reference doc.

15 years agoRemoved literal backspace character from the JS escape sequence part of the reference...
Vladimir Sedach [Fri, 6 Mar 2009 03:05:29 +0000 (20:05 -0700)]
Removed literal backspace character from the JS escape sequence part of the reference doc since it caused an error when generating PDFs.

15 years agoAdded note about printing special characters to escape sequences to the reference.
Vladimir Sedach [Sat, 28 Feb 2009 19:39:06 +0000 (12:39 -0700)]
Added note about printing special characters to escape sequences to the reference.

15 years agoAdded all symbols from DOM levels 1 and 2, Window working draft to the
Vladimir Sedach [Mon, 23 Feb 2009 09:34:35 +0000 (02:34 -0700)]
Added all symbols from DOM levels 1 and 2, Window working draft to the
DOM symbol export convenience packages (used with obfuscation). Moved
non-standard DOM symbols to their own package. Removed the Prototype
symbol export convenience package.

15 years agoFixed the 'pi' symbol-macro.
Vladimir Sedach [Fri, 20 Feb 2009 23:47:08 +0000 (16:47 -0700)]
Fixed the 'pi' symbol-macro.

15 years agoIntroduced the "funcall" macro (which really doesn't do anything - only CL needs...
Vladimir Sedach [Tue, 10 Feb 2009 00:01:55 +0000 (17:01 -0700)]
Introduced the "funcall" macro (which really doesn't do anything - only CL needs it because of the weird way it treats form evaluation).

15 years agoUpdated js-expander to work with the latest CVS version of SLIME.
Vladimir Sedach [Mon, 9 Feb 2009 23:44:41 +0000 (16:44 -0700)]
Updated js-expander to work with the latest CVS version of SLIME.

15 years agoAdded 'reduce' function to runtime lib.
Vladimir Sedach [Sun, 8 Feb 2009 08:13:11 +0000 (01:13 -0700)]
Added 'reduce' function to runtime lib.

15 years agoFixed a bug where variable initializations inside for loops were being compiled as...
Vladimir Sedach [Sun, 8 Feb 2009 07:24:17 +0000 (00:24 -0700)]
Fixed a bug where variable initializations inside for loops were being compiled as statements instead of expressions.

15 years agoImplemented 'flet' and 'labels' as PS macros.
Vladimir Sedach [Sat, 7 Feb 2009 05:02:19 +0000 (22:02 -0700)]
Implemented 'flet' and 'labels' as PS macros.

15 years agoMade who-ps-html handle multiple html forms correctly (ie - things like (:ul (:li...
Vladimir Sedach [Fri, 6 Feb 2009 02:02:03 +0000 (19:02 -0700)]
Made who-ps-html handle multiple html forms correctly (ie - things like (:ul (:li) (:li))).

15 years agoChanged let to not introduce any extra variables (for parallel
Vladimir Sedach [Tue, 3 Feb 2009 01:14:32 +0000 (18:14 -0700)]
Changed let to not introduce any extra variables (for parallel
binding) when only one variable is being bound.

15 years agoGot rid of the "(.method-name object args)" method-calling
Vladimir Sedach [Mon, 2 Feb 2009 21:14:21 +0000 (14:14 -0700)]
Got rid of the "(.method-name object args)" method-calling
convention. It breaks package prefixing/obfuscation, and while
sometimes a handy shortcut it obscures how method calls are really
done, and introduces a redundant way of doing them which complicates
code-walkers and (future) attempts at Parenscript compiler
open-implementation facilities.

15 years agoChanged the @ (slot-value composition macro) not to do the dollar sign
Vladimir Sedach [Mon, 2 Feb 2009 20:27:00 +0000 (13:27 -0700)]
Changed the @ (slot-value composition macro) not to do the dollar sign
thing if the first argument is a string ('$' is a Prototype library
function), and not to do spurious macroexpansion.

15 years agoDefined ps-inline as a PS macro in addition to a CL macro.
Vladimir Sedach [Mon, 2 Feb 2009 07:31:52 +0000 (00:31 -0700)]
Defined ps-inline as a PS macro in addition to a CL macro.

15 years agoFixed bug where expressions could not be applied correctly (ex - ((or a b) c) did...
Vladimir Sedach [Mon, 2 Feb 2009 06:15:41 +0000 (23:15 -0700)]
Fixed bug where expressions could not be applied correctly (ex - ((or a b) c) did not compile to "(a||b)(c)").

15 years agoModified the Parenscript macro facilities so that defpsmacro and
Vladimir Sedach [Sun, 1 Feb 2009 07:18:34 +0000 (00:18 -0700)]
Modified the Parenscript macro facilities so that defpsmacro and
define-ps-symbol-macro define their macros in their lexical
environment (previously they were always defining in the null lexical
environment).

This cleared up the implementation of the macro facilities, and now
defmacro and define-symbol-macro explicitly define macros in the null
lexical environment inside Parenscript code (the behavior is unchanged
and the only one that makes sense since Parenscript code is translated
and not evaluated, but previously this was not obvious from looking at
the implementation).

15 years agoAdded Daniel Gackle and William Halliburton to the list of contributors.
Vladimir Sedach [Wed, 28 Jan 2009 20:13:54 +0000 (13:13 -0700)]
Added Daniel Gackle and William Halliburton to the list of contributors.

15 years agoAdded symbol-to-js to the deprecated interface since it was used in several 3rd party...
Vladimir Sedach [Wed, 28 Jan 2009 20:07:09 +0000 (13:07 -0700)]
Added symbol-to-js to the deprecated interface since it was used in several 3rd party libraries (despite not being exported).

15 years agoMade the ps-html macros generate self-closing tags.
Vladimir Sedach [Thu, 22 Jan 2009 05:14:15 +0000 (22:14 -0700)]
Made the ps-html macros generate self-closing tags.

15 years agoMade the package symbol obfuscator be able to take closures, for more interesting...
Vladimir Sedach [Mon, 19 Jan 2009 19:48:39 +0000 (12:48 -0700)]
Made the package symbol obfuscator be able to take closures, for more interesting obfuscation possibilities (ex: using various Unicode characters).

15 years agoAdded convenience packages that export JS and browser DOM symbols, to be used to...
Vladimir Sedach [Mon, 19 Jan 2009 19:47:02 +0000 (12:47 -0700)]
Added convenience packages that export JS and browser DOM symbols, to be used to make package obfuscation work.

15 years agoChanged the capitalization of "ParenScript" to "Parenscript" in the reference.
Vladimir Sedach [Tue, 30 Dec 2008 21:13:50 +0000 (14:13 -0700)]
Changed the capitalization of "ParenScript" to "Parenscript" in the reference.

15 years agoModified the printer so that PS and PS-INLINE compile and print
Vladimir Sedach [Tue, 30 Dec 2008 21:11:47 +0000 (14:11 -0700)]
Modified the printer so that PS and PS-INLINE compile and print
Parenscript code at macro-expansion time. Renamed COMPILE-SCRIPT to
PS1* and got rid of its output-stream argument.

15 years agoAdded an implementation of 'elt' to ps-macro-lib.
Vladimir Sedach [Tue, 30 Dec 2008 21:10:47 +0000 (14:10 -0700)]
Added an implementation of 'elt' to ps-macro-lib.

15 years agoAdded a "runtime" directory for runtime libs and moved ps-runtime-lib there.
Vladimir Sedach [Tue, 30 Dec 2008 20:48:25 +0000 (13:48 -0700)]
Added a "runtime" directory for runtime libs and moved ps-runtime-lib there.

15 years agoFixed content handling in ps-who-html.
Vladimir Sedach [Sat, 13 Dec 2008 01:27:47 +0000 (18:27 -0700)]
Fixed content handling in ps-who-html.

15 years agoAdded Daniel Gackle <danielgackle@gmail.com>'s contributed [] (nested) array literal...
Vladimir Sedach [Mon, 8 Dec 2008 02:40:57 +0000 (19:40 -0700)]
Added Daniel Gackle <danielgackle@gmail.com>'s contributed [] (nested) array literal macro to the macro library.

15 years agoChanged extras/js-expander.el to work with the latest CVS snapshot of SLIME.
Vladimir Sedach [Sun, 7 Dec 2008 22:48:17 +0000 (15:48 -0700)]
Changed extras/js-expander.el to work with the latest CVS snapshot of SLIME.

15 years agoAdded William Halliburton <whalliburton@gmail.com>'s tracing macro to extras folder.
Vladimir Sedach [Sun, 7 Dec 2008 22:12:12 +0000 (15:12 -0700)]
Added William Halliburton <whalliburton@gmail.com>'s tracing macro to extras folder.

15 years agoMade operator precedence handling not throw away symbol package information.
Vladimir Sedach [Sun, 7 Dec 2008 20:50:36 +0000 (13:50 -0700)]
Made operator precedence handling not throw away symbol package information.

This fixed a bug where for example (ps (#:new)) => ";" instead of "new();".

15 years agoAdded a few more unit tests related to fixes in previous patches.
Vladimir Sedach [Sat, 6 Dec 2008 07:17:27 +0000 (00:17 -0700)]
Added a few more unit tests related to fixes in previous patches.

15 years agoFixed compilation of caller argument lists. Changed the handling of keyword symbols...
Vladimir Sedach [Sat, 6 Dec 2008 05:20:44 +0000 (22:20 -0700)]
Fixed compilation of caller argument lists. Changed the handling of keyword symbols in the process. Now they are no longer output as JavaScript variables, but as strings. The former behavior was a hack introduced to get around some (in hindsight) deficient macrology in an application that used Parenscript, while the latter behavior is more CL-like in that it compiles a self-evaluating object to a self-evaluating object. Thanks to Daniel Gackle for the suggestion on the treatment of keywords.

15 years agoGot rid of parenscript-symbol object; special forms and macros are now
Vladimir Sedach [Fri, 5 Dec 2008 21:23:04 +0000 (14:23 -0700)]
Got rid of parenscript-symbol object; special forms and macros are now
regular Common Lisp symbols so that the package system works as
expected.

15 years agoExported concat-string CL/PS utility function/macro.
Vladimir Sedach [Thu, 4 Dec 2008 06:35:10 +0000 (23:35 -0700)]
Exported concat-string CL/PS utility function/macro.

15 years agoFixed unterminating recursion in who-ps-html when element has attributes but no content.
Vladimir Sedach [Thu, 4 Dec 2008 06:34:26 +0000 (23:34 -0700)]
Fixed unterminating recursion in who-ps-html when element has attributes but no content.

15 years agoRenamed symbol-to-js to symbol-to-js-string and exported it.
Vladimir Sedach [Thu, 4 Dec 2008 05:50:17 +0000 (22:50 -0700)]
Renamed symbol-to-js to symbol-to-js-string and exported it.

15 years agoCorrected reference doc to explain 'var' special form as 'global variable' instead...
Vladimir Sedach [Thu, 4 Dec 2008 05:49:19 +0000 (22:49 -0700)]
Corrected reference doc to explain 'var' special form as 'global variable' instead of 'function variable.'

15 years agoImplemented who-ps-html, which is like the ps-html macro but taking CL-WHO like synta...
Vladimir Sedach [Wed, 26 Nov 2008 05:50:18 +0000 (22:50 -0700)]
Implemented who-ps-html, which is like the ps-html macro but taking CL-WHO like syntax. Changed the behavior of ps-html to preserve the case of tag and attribute symbols when printing.

15 years agoAdded a bunch of unit tests from recent bug reports.
Vladimir Sedach [Mon, 17 Nov 2008 20:54:50 +0000 (13:54 -0700)]
Added a bunch of unit tests from recent bug reports.

15 years agoOverhauled operator precedence handling.
Travis Cross [Sat, 15 Nov 2008 19:28:52 +0000 (19:28 +0000)]
Overhauled operator precedence handling.

In particular the changes here cleaned up unary operator handling,
which was badly broken.

15 years agoCorrected the defaultf psmacro for cases where the rhs value is false in JS.
Travis Cross [Sat, 15 Nov 2008 05:40:25 +0000 (05:40 +0000)]
Corrected the defaultf psmacro for cases where the rhs value is false in JS.

This affected &optional and &key default parameters in lambda lists.

Thanks to Daniel Gackle for the bug report.

15 years agoRevise slot-value fix to not print useless parens.
Travis Cross [Fri, 29 Aug 2008 00:47:51 +0000 (00:47 +0000)]
Revise slot-value fix to not print useless parens.

Now prints: "foo.bar.baz" rather than "(foo.bar).baz"

15 years agojs-slot-value printer now handles generic operators passed as the object.
Travis Cross [Fri, 22 Aug 2008 13:39:52 +0000 (13:39 +0000)]
js-slot-value printer now handles generic operators passed as the object.

(slot-value (or a b c) 'd) now works correctly.

15 years agoUpdated js-aref for expression-precedence fixes.
Travis Cross [Fri, 22 Aug 2008 13:31:56 +0000 (13:31 +0000)]
Updated js-aref for expression-precedence fixes.

15 years agoUpdated operator-precedence to handle more cases.
Travis Cross [Fri, 22 Aug 2008 13:30:06 +0000 (13:30 +0000)]
Updated operator-precedence to handle more cases.

It now correctly deals with aref, slot-value and unary operators.

15 years agoReordered expression-precedence clauses to match precedence.
Travis Cross [Fri, 22 Aug 2008 13:23:10 +0000 (13:23 +0000)]
Reordered expression-precedence clauses to match precedence.

15 years agoFixed AREF when an expression is passed as the array.
Travis Cross [Fri, 22 Aug 2008 07:07:07 +0000 (07:07 +0000)]
Fixed AREF when an expression is passed as the array.

(aref (or a b c) 0) now works.

Thanks to Daniel Gackle for the bug report.

15 years agoCompile anything that follows a unary JS operator as an expression.
Travis Cross [Fri, 22 Aug 2008 06:25:57 +0000 (06:25 +0000)]
Compile anything that follows a unary JS operator as an expression.

Thanks to: Daniel Gackle <danielgackle@gmail.com>

15 years agoImproved handling of quoted symbols in CASE.
Travis Cross [Fri, 22 Aug 2008 05:57:56 +0000 (05:57 +0000)]
Improved handling of quoted symbols in CASE.

(case val ('a (b)))      ; now produces an error, just like:
(case val (('a 'b) (c))) ; did before.

Thanks to: Daniel Gackle <danielgackle@gmail.com>

15 years agoCorrected the definition of ps:length.
Travis Cross [Sun, 17 Aug 2008 09:56:55 +0000 (09:56 +0000)]
Corrected the definition of ps:length.

Thanks to Daniel Gackle for pointing out the problem and the most
obvious solution.

15 years agoAdded a test for correct output of the JS:in operator.
Travis Cross [Mon, 12 May 2008 08:26:03 +0000 (08:26 +0000)]
Added a test for correct output of the JS:in operator.

15 years agoOutput JS operators in lowercase.
Travis Cross [Mon, 12 May 2008 08:25:26 +0000 (08:25 +0000)]
Output JS operators in lowercase.

16 years agoUpdated so as to ps-intern fewer extraneous symbols.
Travis Cross [Sat, 5 Apr 2008 09:16:56 +0000 (09:16 +0000)]
Updated so as to ps-intern fewer extraneous symbols.

16 years agoDeprecated define-script-symbol-macro since it was part of the public interface.
Travis Cross [Sat, 5 Apr 2008 08:59:22 +0000 (08:59 +0000)]
Deprecated define-script-symbol-macro since it was part of the public interface.

16 years agoUpdated the define-script-symbol-macro export to define-ps-symbol-macro.
Travis Cross [Sat, 5 Apr 2008 08:51:55 +0000 (08:51 +0000)]
Updated the define-script-symbol-macro export to define-ps-symbol-macro.

16 years agoReorganized the package exports.
Travis Cross [Sat, 5 Apr 2008 08:48:42 +0000 (08:48 +0000)]
Reorganized the package exports.

16 years agoCorrected parameter docstring.
Travis Cross [Sat, 5 Apr 2008 08:39:27 +0000 (08:39 +0000)]
Corrected parameter docstring.

16 years agoMoved the definition of ps-convert-op-name since we compile compile.lisp before print...
Travis Cross [Sat, 5 Apr 2008 08:16:59 +0000 (08:16 +0000)]
Moved the definition of ps-convert-op-name since we compile compile.lisp before printer.lisp.

16 years agoAdded some symbol mangling fixes.
Travis Cross [Sat, 5 Apr 2008 08:15:11 +0000 (08:15 +0000)]
Added some symbol mangling fixes.

16 years agoFixed one remaining define-script-symbol-macro.
Travis Cross [Sat, 5 Apr 2008 07:19:13 +0000 (07:19 +0000)]
Fixed one remaining define-script-symbol-macro.

16 years agoIntroduced ps-symbols and removed use of :parenscript-special-forms package.
Travis Cross [Sat, 5 Apr 2008 07:07:37 +0000 (07:07 +0000)]
Introduced ps-symbols and removed use of :parenscript-special-forms package.

The idea here is to stop abusing the CL package system while still
allowing the user control of the PS environment.

16 years agoWhitespace fix.
Travis Cross [Sat, 5 Apr 2008 06:38:39 +0000 (06:38 +0000)]
Whitespace fix.

16 years agoChanged script-* to ps-* across the board for consistency.
Travis Cross [Sat, 5 Apr 2008 06:36:29 +0000 (06:36 +0000)]
Changed script-* to ps-* across the board for consistency.

16 years agoQuoted parens in a docstring to make Emacs happy.
Travis Cross [Sat, 5 Apr 2008 05:43:00 +0000 (05:43 +0000)]
Quoted parens in a docstring to make Emacs happy.