schism
s7-playground
schism | s7-playground | |
---|---|---|
7 | 1 | |
1,266 | 37 | |
- | - | |
2.0 | 10.0 | |
over 2 years ago | over 3 years ago | |
Scheme | JavaScript | |
Apache License 2.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.
schism
- Scheme in Scheme on WASM in the Browser
-
Directly compiling Scheme to WebAssembly: lambdas, recursion, iteration
https://github.com/google/schism
For some reason, Google was working on a Scheme WASM compiler, which they got self-hosting. It was then abandoned. I don't really know what they were trying to accomplish with that project.
-
Guile on WebAssembly project underway! -- Spritely Institute
There's an old scheme to wasm project written by Google (Schism)[https://github.com/google/schism]
-
rust dev here, what you people think of carbon
I keep not seeing their WASM Scheme compiler in these lists of abandoned Google software.
- I want to make a toy LISP
- WebContainers: Run Node.js natively in the browser
- A self-hosting Scheme to WebAssembly compiler
s7-playground
-
Directly compiling Scheme to WebAssembly: lambdas, recursion, iteration
This project is very exciting. In the meantime, there are a couple of options:
BiwaScheme: https://www.biwascheme.org/
Advantages: written in JavaScript, with excellent JS interop. Project has some history.
Disadvantages: slower than S7 (though still plenty fast for many uses), less-complete (e.g., no syntax-rules or syntax-case, though it does have its own define-macro).
S7 Scheme: https://cm-gitlab.stanford.edu/bil/s7
Written in C, but can be transpiled to WASM (see https://github.com/actonDev/s7-playground/ )
Advantages: This project also has some history. Considerably faster than BiwaScheme.
Disadvantages: JS interop is clumsier (basically the same issues as JS interop with any WASM code... this could probably be mitigated considerably if someone wanted to take the time).
What are some alternatives?
biwascheme - Scheme interpreter written in JavaScript
rasm - Racket to WebAssembly Compiler
reference-types - Proposal for adding basic reference types (anyref)
proposals - Tracking WebAssembly proposals
function-references - Proposal for Typed Function References
webcontainer-core - Dev environments. In your web app.
exception-handling - Proposal to add exception handling to WebAssembly
Flutter - Flutter makes it easy and fast to build beautiful apps for mobile and beyond
gc - Branch of the spec repo scoped to discussion of GC integration in WebAssembly
wisp - Lisp in WebAssembly
Uno Platform - Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported.