https://github.com/zig-wasm/zorth
FORTH in Zig
https://github.com/zig-wasm/zorth
forth wasm zig
Last synced: 6 days ago
JSON representation
FORTH in Zig
- Host: GitHub
- URL: https://github.com/zig-wasm/zorth
- Owner: zig-wasm
- License: mit
- Created: 2025-09-22T14:40:31.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2026-05-05T10:59:46.000Z (20 days ago)
- Last Synced: 2026-05-05T12:35:25.529Z (20 days ago)
- Topics: forth, wasm, zig
- Language: Zig
- Size: 49.8 KB
- Stars: 19
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# zorth
## Forth in Zig and WebAssembly
[Forth](https://en.wikipedia.org/wiki/Forth_(programming_language)) is a
prehistoric [esolang](https://en.wikipedia.org/wiki/Esoteric_programming_language).
It has little to no syntax and blurs the boundary between interpreted and
compiled. Its implementations often rely on either
[indirect branches](https://en.wikipedia.org/wiki/Indirect_branch) or
[tail calls](https://en.wikipedia.org/wiki/Tail_call). Structured programming
languages use [labels as values](https://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html)
to represent indirect branches and we all know these are
[considered harmful](https://en.wikipedia.org/wiki/Considered_harmful) so let us
explore tail calls instead.
As luck would have it, [Zig](https://ziglang.org) specifies `.always_tail` in the
language itself. That makes it an ideal modern implementation target.
## ✨ Try it in your browser ✨
➡️ **https://zigwasm.org/zorth**