=> ./img/screenshot_jarotsim_banner.png four rows of tiles, each one with a different pattern of tiles and with a bird with a hat in a different pose and position
* the tile design that will be used to replace the current tile: you can click on it to rotate between the four possible designs.
* the pose of the bird in the next step: you can click on the bird to rotate between the four possible poses, and a fifth one that indicates that the bird will halt.
* where in the row the bird should move, right or left of the current tile. you can click on the empty space at the left or right of the tile to have the bird move there.
the table of rules highlights the rule that would currently apply, given the pose of the bird and the tile design where they are standing.
the halt pose will hide the new tile design, and additionally it will never be highlighted.
note that the bird will pause when it arrives at a rule with a halt pose. you won't be able to step or press play until you change the rule, the current pose, and/or the current tile design.
=> ./img/screenshot_jarotsim_banner.png four rows of tiles, each one with a different pattern of tiles and with a bird with a hat in a different pose and position
the initial state of jarotsim is based on a turing machine described by Wolfram in A New Kind of Science, page 80:
=> https://www.wolframscience.com/nks/p80--turing-machines/ Turing Machines: A New Kind of Science | Online by Stephen Wolfram
it will generate an ever-growing and complex sequence starting from an empty row of tiles.
feel free to modify the rules to observe the changes in the behavior of the process.
additionally, we invite you to attempt the following:
have the bird with a hat...
* "bouncing" back and forth between two tiles.
* repeatedly setting a pattern of tiles in the row.
* setting a pattern of tiles in the row, and then stopping. what's the longest pattern that you can set before stopping? (this is basically the "busy beaver game")
* processing an "input" given as the initial state of the row of tiles. maybe the bird can duplicate it? count the amount of specific tiles? perform arithmetic?
* generating interesting visuals for your next algorave.
* and whatever else you can think of!
setting up the sixteen possible rules in the table can be a little bit overwhelming, so remember that you can "turn off" a rule, a column and/or a row by using the halting pose.
jarotsim is inspired by {turingsim} as a simulator of turing-machine-based performances like {d-turing} or {mub}.
the objective is to have a graphical user interface where one can edit / livecode the rules of the machine and its tape, and explore their effects.
for the moment the idea is to have a maximum of 4 states and 4 symbols. according to Wolfram, they should be more than enough to explore complex behaviors.
=> https://www.wolframscience.com/nks/p78--turing-machines/ Turing Machines: A New Kind of Science | Online by Stephen Wolfram
as of now, all of the machines described in {máquinas de turing} can be simulated in jarotsim.