diff options
Diffstat (limited to 'readme.md')
-rw-r--r-- | readme.md | 21 |
1 files changed, 21 insertions, 0 deletions
@@ -7,6 +7,9 @@ better Gödel-numbering than its sister language Read my [blog post](https://text.marvinborner.de/2023-10-05-15.html) for more information. +This project is basically just a slightly modified version of +[birb](https://github.com/marvinborner/birb). + ## Performance The [bruijn @@ -25,3 +28,21 @@ $ hyperfine "jottary reduce <(printf '1%.0s' {1..503})" Time (mean ± σ): 10.8 ms ± 0.7 ms [User: 1.7 ms, System: 9.0 ms] Range (min … max): 9.5 ms … 12.5 ms 163 runs ``` + +## Transpiler + +The transpiler converts binary lambda calculus to Jottary. It does this +by converting to SKI combinators, then to Jot, and finally to Jottary. +Aside from general inefficiency of LC-SKI conversion, the jottary +programs will grow *exponentially* compared to its Jot variant. For +example, the `id` program `0010` gets transpiled to 2089884 unary +symbols (260KB!). + +## Usage + +Install Haskell's stack. Then, + +- `stack run -- reduce file.jottary` or + `stack run -- reduce <(echo 1111111)` +- `stack run -- transpile <(echo 0010)` to transpile the `id` program +- `stack install` so you can enjoy `jottary` from anywhere |