Wireworld is a Turing-complete cellular automaton first proposed by Brian Silverman in 1987 suited for simulating logic gates and other real-world computer elements. This paclet provides a comprehensive set of functions for simulating and working with the Wireworld cellular automaton system. Key functions include WireworldEvolve for advancing the automaton through time steps, WireworldPlot for visualizing the current state of the grid, WireworldDraw for drawing a Wireworld state using interactive tools, and WireworldStateQ for confirming the validity of Wireworldstate.
To install this paclet in your Wolfram Language environment, evaluate this code:
PacletInstall["DanielS/Wireworld"]
To load the code after installation, evaluate this code:
In[]:=
Needs["DanielS`Wireworld`"]
Binary Multiplier
Binary Multiplier
Binary multiplier taken from https://mathworld.wolfram.com/WireWorld.html
In[]:=
binaryMultiplier=SparseArray;
In[]:=
Run the emulator
In[]:=
DynamicModule{state=binaryMultiplier},Dynamicstate=[state,{{1}}],ImageSize->{1000,500}
Prime Computer
Prime Computer
Prime computer taken from https://github.com/grev-dev/wireworld-in-unity
In[]:=
primeComputer=;primeComputer=Echo[StringSplit[primeComputer,"\n"],"Length: ",Length];primeComputer=Echo[Characters/@StringPadRight[primeComputer,800," "],"Dimensions: ",Dimensions];primeComputer=SparseArray[primeComputer/.{" "->0,"#"->1,"~"->2,"@"->3}]
»
Length: 601
»
Dimensions: {601,800}
Out[]=
SparseArray
In[]:=
Out[]=
Run the emulator:
In[]:=
CreatePaletteDynamicModule{state=primeComputer},Dynamicstate=[state,{{5}}],ImageSize->Large,Mesh->None,WindowTitle->"Wireworld | Prime computer"
CITE THIS NOTEBOOK
CITE THIS NOTEBOOK
Wireworld: Turing-complete cellular automaton for simulating logic gates
by Daniel Sanchez
Wolfram Community, STAFF PICKS, July 24, 2025
https://community.wolfram.com/groups/-/m/t/3518546
by Daniel Sanchez
Wolfram Community, STAFF PICKS, July 24, 2025
https://community.wolfram.com/groups/-/m/t/3518546