ReWire Hardware circuits from functional specifications

ReWire by Example is a gentle, example-driven introduction to the ReWire language (as opposed to the Quick Start, which covers driving the compiler). It builds up from monadic interpreters to real synthesizable devices, one small program at a time.

Open the tutorial →

The tutorial is maintained as an mdbook in the main repository under tutorial/rewire-by-example, and is rebuilt and published here automatically on every change. It covers, among other things:

  • Monad Wrangling 101 — simple arithmetic interpreters, Identity, errors and Maybe, and adding a register.
  • Hello Worlds — simple Mealy machines, Fibonacci, and carry-save adders.
  • Cross Bar Switch — a larger worked example.

For the full table of contents, open the tutorial.