wisp
IchigoLisp
Our great sponsors
wisp | IchigoLisp | |
---|---|---|
3 | 4 | |
185 | 41 | |
- | - | |
0.0 | 0.0 | |
almost 2 years ago | about 1 year ago | |
Zig | WebAssembly | |
GNU Affero General Public License v3.0 | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
wisp
- Wisp is a Lisp system for WebAssembly
- Guile Steel: a proposal for a systems Lisp
-
I want to make a toy LISP
There have been some new efforts recently to target WASM in a Lisp. Wisp, which is written in Zig, compiles to WASM. You could also use something like Rust or C.
IchigoLisp
-
For the LISP 1.5 mainframe fans here...
this WebAssembly implementation has everything except floating point arithmetic https://github.com/zick/IchigoLisp
-
I want to make a toy LISP
Ichigo does just that in an attempt at a faithful recreation of LISP 1.5. Seems to detail it more here, but you'll have to rely on a translation assuming you don't understand Japanese.
-
WASI: A New Kind of System Interface
Maybe it's by design, but my biggest sticking point with WASM is the inability to modify the code at runtime, at least to my knowledge. This makes it a bad target for dynamic languages where the source -> executable mapping isn't wholly known ahead of time, especially Lisps but also any looking to JIT compile things.
Speaking of Lisp and WASM, IchigoLisp [0] is a remarkably faithful implementation of LISP 1.5 in WAT. Extraordinarily impressive, and inspires even more awe for the original system from the 60s.
[0] https://github.com/zick/IchigoLisp
- Ichigo Lisp: LISP 1.5(-ish) implementation in WebAssembly
What are some alternatives?
wisp - A little Clojure-like LISP in JavaScript
schism - A self-hosting Scheme to WebAssembly compiler
marwood - An embeddable Scheme R7 Compiler & Runtime written in Rust
paip-lisp - Lisp code for the textbook "Paradigms of Artificial Intelligence Programming"
lisp - Toy Lisp 1.5 interpreter
steel - An embedded scheme interpreter in Rust
mal - mal - Make a Lisp
sectorlisp - Bootstrapping LISP in a Boot Sector
thinlisp - ThinLisp is an open source Lisp to C translator.
coalton - Coalton is an efficient, statically typed functional programming language that supercharges Common Lisp.