LispyScript
This package is no longer supported. Do not use.
A Javascript with Lispy syntax and Macros!
Lispyscript is Javascript using a 'Lispy' syntax, and compiles to Javascript.
Features
- Javscript Semantics
- Macros
- Tail Call Optimization
- Templates
- Callback Sequence (avoid nested callbacks)
- Monads
- Run in browser
- Server-side and Browser-side REPLs
- Unit test feature
Beating the averages.
LispyScript was inspired byhttps://groups.google.com/forum/#!forum/lispyscript.
Discuss LispyScript atContributors
Santosh Rajan santoshrajan.
Balaji Rao [balajirrao] (https://github.com/balajirrao).
Irakli Gozalishvili Gozala.
Darren Cruse darrencruse
Note to Contributors
To build and run the tests do:
npm test
To build all generated files (including the browser bundle) do:
npm run-script prepublish
Note if browserify fails to find your lispyscript module - Consider adding the location of your lispyscript repo directory on your $NODE_PATH.
Change Log
Version 1.0.0, 6 Nov 2015
Added sitemap support. Added in browser repl. Added watch option to lispy command. Improved run option for lispy command.
Simplified browser usage.
Version 0.3.6, 11 Jul 2013
Simplified browser usage.
Version 0.3.5, 1 Jul 2013
Added browser example in examples folder.
Version 0.3.4, 29 Jun 2013
Added browser support for lispyscript via browserify.
Version 0.3.3, 26 Jun 2013
Added support for requiring '.ls' files.
Require lispyscript files in javascript
Version 0.3.2, 24 Jun 2013
Removed dependency on amd-loader. Use browserify for browser.
Removed dependency on underscorejs
Refactored code
Version 0.3.1, 4 May 2013
var
now supports multiple assignments
Refactored array
and object
to generate cleaner code
Overall cleaner code generated
Version 0.3.0, 24 Apr 2013
Dropped support for older browsers. (Cleaner code)
Minor bug fix
Version 0.2.9, 14 Oct 2012
Added more options to lispy command
Added arrayInit, arrayInit2d, each2d
Added breakout game example
Added shortcut macros for browser usage
Bug fix for division operator
Version 0.2.8, 8 Oct 2012
Added continuation monad
minor bug fixes
Version 0.2.7, 28 Sep 2012
Added method chaining
Changed cond statement
Added homoiconic expressions for recursive macros
Improved macro error checking
Version 0.2.6, 26 Sep 2012
Added Monads
Added cond (switch) statement
Version 0.2.5, 20 Sep 2012
Bug Fixes
Version 0.2.4, 18 Sep 2012
Added array and object keywords.
Macros follow guidelines now.
Version 0.2.3, 15 Sep 2012
Added Callback Sequence to avoid nested callbacks.
Added Test features for language.
Added Test Suite.
Fixed Browser Compatibility issues.
Bug fixes
Version 0.2.2, 9 Sep 2012
Added tail call optimised loop recur construct
Bug fixes
Version 0.2.1, 12 Aug 2012
Added to docs
Edited docs to for latest version
Added to examples
Minor bug fixes
Version 0.2.0, 11 Aug 2012
Bug fix for usage in browser.
Version 0.1.9, 9 Aug 2012
Added html templates
Added template-repeat-key
Changed template syntax
Version 0.1.8, 6 Aug 2012
Changed comments from "#" to ";".
Made LispyScript browser compliant.
Simplified LispyScript installation.
Added support for stdin -> compile -> stdout.
Added 'template-repeat'.
Added setting array/object elements.
Added chatserver example.
Added a simple Twitter example using expressjs and lispyscript templates.