Show HN: Build a CPU from gates, in TypeScript, in the browser(play.simten.dev) |
Show HN: Build a CPU from gates, in TypeScript, in the browser(play.simten.dev) |
I drew inspiration from the circuit simulator in SICP and a tool called Logisim,
and used Lisp to design a circuit simulation library.
The core concept was:
Each function could generate a circuit module,
that accepted multiple input lines—each consisting of multiple bits,
and produced a single output line, which also consisted of multiple bits.
For example, an adder would take two $n$-bit lines as input and output a single $n$-bit line.
Using this simulation library, I also built a simple CPU and implemented a factorial function using its machine language.
I was also heavily inspired by the Steam game 'Turing Complete' but wanted something code based to not need to manually wire in the GUI. Thanks for taking a look