5 years agoCorrected the definition of ps:length.
Travis Cross [Sun, 17 Aug 2008 02:56:55]
Corrected the definition of ps:length.


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

5 years agoAdded a test for correct output of the JS:in operator.
Travis Cross [Mon, 12 May 2008 01:26:03]
Added a test for correct output of the JS:in operator.

5 years agoOutput JS operators in lowercase.
Travis Cross [Mon, 12 May 2008 01:25:26]
Output JS operators in lowercase.

6 years agoUpdated so as to ps-intern fewer extraneous symbols.
Travis Cross [Sat, 05 Apr 2008 02:16:56]
Updated so as to ps-intern fewer extraneous symbols.

6 years agoDeprecated define-script-symbol-macro since it was part of the public interface.
Travis Cross [Sat, 05 Apr 2008 01:59:22]
Deprecated define-script-symbol-macro since it was part of the public interface.

6 years agoUpdated the define-script-symbol-macro export to define-ps-symbol-macro.
Travis Cross [Sat, 05 Apr 2008 01:51:55]
Updated the define-script-symbol-macro export to define-ps-symbol-macro.

6 years agoReorganized the package exports.
Travis Cross [Sat, 05 Apr 2008 01:48:42]
Reorganized the package exports.

6 years agoCorrected parameter docstring.
Travis Cross [Sat, 05 Apr 2008 01:39:27]
Corrected parameter docstring.

6 years agoMoved the definition of ps-convert-op-name since we compile compile.lisp before printer.lisp.
Travis Cross [Sat, 05 Apr 2008 01:16:59]
Moved the definition of ps-convert-op-name since we compile compile.lisp before printer.lisp.

6 years agoAdded some symbol mangling fixes.
Travis Cross [Sat, 05 Apr 2008 01:15:11]
Added some symbol mangling fixes.

6 years agoFixed one remaining define-script-symbol-macro.
Travis Cross [Sat, 05 Apr 2008 00:19:13]
Fixed one remaining define-script-symbol-macro.

6 years agoIntroduced ps-symbols and removed use of :parenscript-special-forms package.
Travis Cross [Sat, 05 Apr 2008 00:07:37]
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.

6 years agoWhitespace fix.
Travis Cross [Fri, 04 Apr 2008 23:38:39]
Whitespace fix.

6 years agoChanged script-* to ps-* across the board for consistency.
Travis Cross [Fri, 04 Apr 2008 23:36:29]
Changed script-* to ps-* across the board for consistency.

6 years agoQuoted parens in a docstring to make Emacs happy.
Travis Cross [Fri, 04 Apr 2008 22:43:00]
Quoted parens in a docstring to make Emacs happy.

6 years agoIntern all special form symbols in the :parenscript-special-forms package.
Travis Cross [Tue, 01 Apr 2008 08:30:22]
Intern all special form symbols in the :parenscript-special-forms package.

6 years agoExported PI.
Travis Cross [Tue, 01 Apr 2008 01:37:39]
Exported PI.

6 years agoExported hyperbolic trig symbols.
Travis Cross [Tue, 01 Apr 2008 01:36:41]
Exported hyperbolic trig symbols.

6 years agoRearranged math-related exports.
Travis Cross [Tue, 01 Apr 2008 01:35:57]
Rearranged math-related exports.

6 years agoAdded handling for PI.
Travis Cross [Tue, 01 Apr 2008 01:30:07]
Added handling for PI.

6 years agoRelocated the definitions for the 1+ and 1- psmacros with the other math functions.
Travis Cross [Tue, 01 Apr 2008 01:18:01]
Relocated the definitions for the 1+ and 1- psmacros with the other math functions.

6 years agoImplemented equivalents for the CL hyperbolic trigometric functions.
Travis Cross [Tue, 01 Apr 2008 01:13:07]
Implemented equivalents for the CL hyperbolic trigometric functions.

6 years agoAdded PS-ONCE-ONLY macro building helper.
Travis Cross [Tue, 01 Apr 2008 00:59:04]
Added PS-ONCE-ONLY macro building helper.

6 years agoRearranged math psmacros to match the order that the corresponding functions appear in the HyperSpec.
Travis Cross [Mon, 31 Mar 2008 16:03:58]
Rearranged math psmacros to match the order that the corresponding functions appear in the HyperSpec.

6 years agoAdded support for SQRT function.
Travis Cross [Mon, 31 Mar 2008 15:48:10]
Added support for SQRT function.

6 years agoAdded support for LOG function.
Travis Cross [Mon, 31 Mar 2008 15:46:13]
Added support for LOG function.


Thanks to Daniel Gackle.

6 years agoUpdated atan to support two arguments as in CL.
Travis Cross [Mon, 31 Mar 2008 15:43:45]
Updated atan to support two arguments as in CL.


ATAN with two arguments translates into atan2 in JS.

6 years agoAdded a couple of test cases for object literals.
Travis Cross [Mon, 31 Mar 2008 15:08:55]
Added a couple of test cases for object literals.

6 years agoUpdated the blank-object-literal test for the now correct behavior.
Travis Cross [Mon, 31 Mar 2008 15:02:31]
Updated the blank-object-literal test for the now correct behavior.

6 years agoAdded {} to *ps-literals*.
Travis Cross [Mon, 31 Mar 2008 15:02:00]
Added {} to *ps-literals*.


Using {} as a literal to create an empty object literal was only
working by accident previously. When not in the function position, {}
was being compiled as a JS variable rather than an object-literal,
which just happened to work sometimes. In concert with correctly
checking symbols that aren't in the parenscript package, this should
provide for more reliable behavior.

6 years agoUpdated ps-literal-p to correctly identify literal symbols without regard to the symbol's package.
Travis Cross [Mon, 31 Mar 2008 14:51:58]
Updated ps-literal-p to correctly identify literal symbols without regard to the symbol's package.

6 years agoSilence an unused variable warning.
Travis Cross [Mon, 31 Mar 2008 14:27:33]
Silence an unused variable warning.

6 years agoUpdated ps-special-form-p to correctly identify a special form even if the symbol identifying the special form is in the wrong package.
Travis Cross [Sun, 30 Mar 2008 19:13:23]
Updated ps-special-form-p to correctly identify a special form even if the symbol identifying the special form is in the wrong package.

6 years agoCleaned up and standardized indentation of JS code in the reference documentation.
Travis Cross [Sun, 30 Mar 2008 16:39:49]
Cleaned up and standardized indentation of JS code in the reference documentation.

6 years agoAdded myself to the list of contributors.
Travis Cross [Sun, 30 Mar 2008 15:53:08]
Added myself to the list of contributors.

6 years agoAdded a mechanism for expanding parenscript forms in a clean environment.
Travis Cross [Sun, 30 Mar 2008 15:51:16]
Added a mechanism for expanding parenscript forms in a clean environment.

6 years agoRemoved deprecated exports that are no longer implemented.
Travis Cross [Sun, 30 Mar 2008 15:38:31]
Removed deprecated exports that are no longer implemented.

6 years agoCleaned up and rearranged the package exports a bit.
Travis Cross [Sun, 30 Mar 2008 15:35:50]
Cleaned up and rearranged the package exports a bit.

6 years agoUpdated the documentation and test cases.
Travis Cross [Sun, 30 Mar 2008 15:28:56]
Updated the documentation and test cases.

6 years agoSome minor comment and whitespace cleanup.
Travis Cross [Sun, 30 Mar 2008 13:11:34]
Some minor comment and whitespace cleanup.

6 years agoWhitespaceification: removed indentation tabs throughout project.
Travis Cross [Sun, 30 Mar 2008 12:57:12]
Whitespaceification: removed indentation tabs throughout project.


...and replaced each tab with 8 spaces. Tab indentation had
previously been used inconsistently and was dominated by space-based
indentation.

In the future, disable indent-tabs-mode in emacs!

(setq indent-tabs-mode nil)

6 years agoImproved, extended, and refactored iteration special forms.
Travis Cross [Sun, 30 Mar 2008 12:35:12]
Improved, extended, and refactored iteration special forms.


* Added support for DO*.

* DO now does parallel assignment.

* DO/DO* now correctly support init-forms such as:

(do (a (b) (c 1) (d 1 (1+ d))) ...)

* DO/DO*/DOTIMES/DOLIST/DOEACH now support return values via a lambda
transform.

* DOEACH now supports implicit key/value destructuring, e.g.:

(doeach ((key val) arr res) ...)

* Added labeled-for to facilitate creating labeled for loops.

* Restructured low level printer operators to better match the
underlying JS.

6 years agoUpdated let1-dynamic to clean up its temporary stack variable after use.
Travis Cross [Sat, 29 Mar 2008 19:33:34]
Updated let1-dynamic to clean up its temporary stack variable after use.

6 years agoAdded setq and psetq.
Travis Cross [Sat, 29 Mar 2008 19:27:55]
Added setq and psetq.

6 years agoAdded psetf.
Travis Cross [Sat, 29 Mar 2008 19:25:53]
Added psetf.

6 years agoAliased let to simple-let.
Travis Cross [Sat, 29 Mar 2008 19:23:16]
Aliased let to simple-let.

6 years agoAdded simple-let, which does parallel binding without a lambda.
Travis Cross [Sat, 29 Mar 2008 19:22:18]
Added simple-let, which does parallel binding without a lambda.

6 years agoAdded simple-let* and aliased let* to it.
Travis Cross [Sat, 29 Mar 2008 19:14:00]
Added simple-let* and aliased let* to it.

6 years agoAdded lexical-let.
Travis Cross [Sat, 29 Mar 2008 19:08:29]
Added lexical-let.

6 years agoGreatly simplified implementation of lexical-let*.
Travis Cross [Sat, 29 Mar 2008 19:05:25]
Greatly simplified implementation of lexical-let*.

Next ->