diff --git a/README.md b/README.md index c9c3f55..5993402 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,7 @@ Here I will provide github links which are maybe easier to navigate. - XY: a family of array-oriented, concatenative programming languages with first-class continuations. XY 1 has quotations, lists, functions, and patterns. XY 2 is flat. XY 0 has quotations and shuffle-symbols but dispenses with lists and patterns. (I don't know where to find an implementation only a [document](http://www.nsl.com/k/xy/xy.htm)) - [Kitten](https://github.com/evincarofautumn/kitten): a statically typed, stack-based functional programming language designed for simplicity, speed, and safety. - [Stabel (alpha)](https://stabel-lang.org/): RPN + static type system, compiles to WebAssembly. Not a forth per se, but may offer some ideas or be of some use. +- [gnaw](https://github.com/warlyjr-cloud/gnaw): a small stack language written in Rust, borrowing Forth's model (`: ;` definitions, return stack, `do/loop`, a `see` disassembler) rather than its standard — not ANS-compliant. Its angle is a set of built-in words for the byte transforms that show up in CTF and reverse-engineering work (hex, repeating-key XOR, ROT13, Base64, single-byte XOR brute force), so decoding a challenge composes into a one-liner. Has a [browser playground](https://warlyjr-cloud.github.io/gnaw/) via WebAssembly. # Resources