Parenscript code is treated the same way as Common Lisp code, making the full power of Lisp macros available for JavaScript. This provides a web development environment that is unmatched in its ability to reduce code duplication and provides advanced metaprogramming facilities to web developers.
At the same time, Parenscript is different from almost all other "language X" to JavaScript translators in that it imposes almost no overhead.
License: BSD-3-Clause
Homepage: http://common-lisp.net/project/parenscript/
Parenscript is available in Quicklisp since version 2.1 (at least).
It is a kind of s-exp syntax for Javascript.
Live coding
Trident-mode is an Emacs mode for live Parenscript interaction.
More precisely it is a minor mode and a collection of commands for working with Parenscript code in SLIME and sending it to the browser via Skewer. The goal is to create an environment for hacking Parenscript which fits as naturally as possible into the Lisp style of interactive development. It can also open a Javascript REPL connected to the browser and connect to a page the server of which you don’t control.
TodoMVC example
This Todo MVC example is implemented in Parenscript, using the Panic wrapper around React.
Other resources
All pages in topic "Parenscript":
- ParenscriptClassicOO - JavaScript's support for object-oriented programming is a bit unusual and often feels repetitive and low-level
- parenscriptm - Tool for generating mithrilJS code in parenscript
- ParenScriptObjectSystem - The ParenScript Object System (PSOS) is a facility for object-oriented programming in ParenScript using the same style and techniques as the Common Lisp Object System
- ParenscriptTipsAndTricks - This page is for snippets of code that are useful in writing ParenScript code
- ParenscriptWithApachePHP - This page describes one technique for seamlessly integrating ParenScript with Apache using PHP, mod_rewrite, and GNU make
- parenscriptx - A simple tool for aiding with creating React UIs in parenscript