logisim is a logic circuit simulator for Unix-compatible systems, developed on Linux. With logisim it is possible to design from simple to very complex logic circuits. There are some special features regarding the implementation:
Modularization: logisim is highly modularized. There are modules for each gate type, for each graphic output type and even for converting colors. Thus the program can be extended very easily by simply adding new modules without the need of recompiling. It could even be possible to add new modules at runtime.
Simulation: There are some logic circuit simulators which pass on the gates’ states with a clock pulse which has nothing to do with the principle of logic. Therefore logisim calculates the logic flow through all gates recursively and redraws the screen at the end of all calculations.