Rethinking Jumps

A project log for Trinity

A ternary LISP machine

john-sullyJohn Sully 12/17/2014 at 04:460 Comments

The JAF instruction is the most important instruction in the whole machine. It is what makes it Turing complete. Unfortunately it is also currently spec'd at 2 operands which makes the implementation much more difficult.

I've been mulling over replacing JAF with a set of conditional jump instructions:

JEQ a==b

JEZ a==0

JMP (unconditional)

These 3 should be hardware efficient while allowing efficient implementations of the two most common loops I expect to see:

Searching for tokens, and for loops.