Scirch is the name of a programming language I built. Scirch was made in order to make it easier for people to simulate simple logic circuits and gates. Using Scirch, users are able to quickly hack up a circuit complete with subcomponents, and run them from within a main circuit. They can pass in as many inputs as they want and see the values of those inputs at any time.
The programming language is very simple and has similar syntax to c. The language has a defined syntax and source code has to be put into an extra file. Scirch was built using ocaml and ocamlyacc and has the ability to execute both native Scirch code as well as fake bytecode.
![]() |
| Making the project. |
![]() |
| Running Scirch with one of the test files -- test-gates.sc. This test file prints out the truth tables for each of the supported gates: AND, OR, NAND, NOR, NOT. |
![]() |
| Running Scirch with another test file -- test-callfunc.sc This test file checks Scirch's ability to create and call functions. |
![]() |
| Running Scirch with a third test file -- test-setvatrs.sc This test file stores values in variables and uses those stored values in arithmetic operations. |



