Brainfuck interpreter: https://github.com/serprex/bfhs
minibf.hs is half the size of bf.hs, but the latter is more optimized as it implements jump tables for [] instructions & combines consecutive <>+- & more. Tape implemented as a zipper. Fun part of implementation is that the interpreter is mostly a pure function building up an output string & returns that to the io interpreter when it needs input or escaping
Fractal renderer: https://github.com/serprex/Fractaler Templates.hs implements a variety of fractals as pure functions & Fractaler.hs is the UI
Brainfuck interpreter: https://github.com/serprex/bfhs minibf.hs is half the size of bf.hs, but the latter is more optimized as it implements jump tables for [] instructions & combines consecutive <>+- & more. Tape implemented as a zipper. Fun part of implementation is that the interpreter is mostly a pure function building up an output string & returns that to the io interpreter when it needs input or escaping