Hacker News new | ask | show | jobs
by anthk 129 days ago
Muxleq and Subleq:

https://github.com/howerj/subleq

https://github.com/howerj/muxleq

Muxleq because of performance:

      cd muxleq
      cc -O2 -ffast-math -o muxleq muxleq.c
    
Edit muxleq.fth, set these values like this:

    1 constant opt.multi      ( Add in large "pause" primitive )
    1 constant opt.editor     ( Add in Text Editor )
    1 constant opt.info       ( Add info printing function      )
    0 constant opt.generate-c ( Generate C code )
    1 constant opt.better-see ( Replace 'see' with better version )
    1 constant opt.control    ( Add in more control structures ) 
    0 constant opt.allocate   ( Add in "allocate"/"free" )
    1 constant opt.float      ( Add in floating point code )
    0 constant opt.glossary   ( Add in "glossary" word )
    1 constant opt.optimize   ( Enable extra optimization )
    1 constant opt.divmod     ( Use "opDivMod" primitive )
    0 constant opt.self       ( self-interpreter [NOT WORKING] )
Then run:

./muxleq ./muxleq.dec < muxleq.fth > new.dec

new.dec it's the enhanced SUBLEQ EForth image.

To run it:

      ./muxleq new.dec
For the available words, run

      words
inside the interpreter.

Enter

      bye
to exit.

Get Starting Forth but the ANS version (there's some PDF in search engines) and Thinking Forth.