diff --git a/README.md b/README.md index 4f0eb32..16e16d2 100644 --- a/README.md +++ b/README.md @@ -143,6 +143,7 @@ To sort and filter the list interactively, visit the [webpage](https://dbohdan.g | Scheme | [s7](https://ccrma.stanford.edu/software/snd/snd/s7.html) | C | Tracing | BSD-3-Clause | Implements a subset of R5RS/R7RS. Descended from TinyScheme. | | Scheme | [Steel](https://github.com/mattwparas/steel) | Rust | Ref. counting + tracing GC | Apache-2.0 or MIT | Aims for eventual R5RS and R7RS language compliance, with extensions inspired by Racket. | | Scheme | [TinyScheme](http://tinyscheme.sourceforge.net/) | C | Tracing? | BSD-3-Clause | Implements a subset of R5RS. | +| Scheme | [Wile](https://github.com/aalpar/wile) | Go | Go's GC | Apache-2.0 | R7RS. Pure Go, no CGo. Bytecode compiler and stack-based VM. Hygienic macros ([sets of scopes](https://www.cs.utah.edu/plt/scope-sets/)), first-class continuations, numeric tower. Two-layer [sandboxing](https://github.com/aalpar/wile/blob/master/docs/SANDBOXING.md): extensions not loaded don't exist at compile time; a runtime authorizer gates privileged operations. [Embedding API](https://pkg.go.dev/github.com/aalpar/wile). | | SGScript | [SGScript](https://github.com/snake5/sgscript) | C | Ref. counting + tracing CG | MIT | [Features](http://www.sgscript.org/pages/advdocs/sgscript.docs.htm#Why-SGScript) include a built-in data serialization format, coroutines, class-based OOP, sandboxed evaluation, a built-in debugger and profiler. | | shell | [sh](https://github.com/mvdan/sh) | Go | Go's GC | MIT | Implements POSIX shell, Bash, and mksh in pure Go. There are caveats with compatibility. See the [readme](https://github.com/mvdan/sh#caveats) and issues like [mvdan/sh#221](https://github.com/mvdan/sh/issues/221). | | Shine | [Shine](https://github.com/richardhundt/shine) | C | Tracing | MIT | A language based on Lua with additional safety and expressiveness features implemented as a fork of LuaJIT. | diff --git a/data/projects.toml b/data/projects.toml index f813703..f5431c6 100644 --- a/data/projects.toml +++ b/data/projects.toml @@ -1152,6 +1152,14 @@ gc = "None (no dynamic memory allocation)" license = "MIT" notes = "An expression language for Wireshark-like filters." +[Wile] +url = "https://github.com/aalpar/wile" +lang = "Scheme" +impl_in = "Go" +gc = "Go's GC" +license = "Apache-2.0" +notes = "R7RS. Pure Go, no CGo. Bytecode compiler and stack-based VM. Hygienic macros ([sets of scopes](https://www.cs.utah.edu/plt/scope-sets/)), first-class continuations, numeric tower. Two-layer [sandboxing](https://github.com/aalpar/wile/blob/master/docs/SANDBOXING.md): extensions not loaded don't exist at compile time; a runtime authorizer gates privileged operations. [Embedding API](https://pkg.go.dev/github.com/aalpar/wile)." + [Wren] url = "https://github.com/munificent/wren" lang = "Wren"