An open API service indexing awesome lists of open source software.

https://github.com/overminddl1/elixir_wireworld

Wireworld implementation in Elixir
https://github.com/overminddl1/elixir_wireworld

Last synced: 11 months ago
JSON representation

Wireworld implementation in Elixir

Awesome Lists containing this project

README

          

# Wireworld

Wireworld implementation in Elixir.

Set it up with `Wireworld.setup/3`, increment the state with `Wireworld.next_state/2`, and print out the current state with `Wireworld.to_string/2`, or write your own display implementation.

## Examples

It comes built in with a `Wireworld.demo/2` function to run some pre-made circuit demo's, with various options.

[Here is a gif of the `:nullifier` demo in operation in my terminal:](https://overminddl1.com/screenshots/work/Wireworld-nullifier.gif)
![Nullifier Demo](https://overminddl1.com/screenshots/work/Wireworld-nullifier.gif)

[Here is a gif of the `:diodes` demo in operation in my terminal:](https://overminddl1.com/screenshots/work/Wireworld-diodes.gif)
![Diodes Demo](https://overminddl1.com/screenshots/work/Wireworld-diodes.gif)

[Here is a gif of the `:clock_xor` demo in operation in my terminal:](https://overminddl1.com/screenshots/work/Wireworld-clock_xor.gif)
![Clock-XOR Demo](https://overminddl1.com/screenshots/work/Wireworld-clock_xor.gif)