Anyone know if any of those “archive software for a million years and have it still usable for whatever species digs it up” efforts have ever considered Wireworld as an aggressively minimal CPU implementation? It might be a bit too minimal, but it’s probably the only thing Turing complete thing I’ve seen simpler than Conway’s Life.
Hmm, I wonder if one could write a compiler to compile arbitrary programs to Wireworld “hardware”…
I was at a computing history museum at the same venue as the 2023 vintage computer fest and showed the people running the museum wireworld, and they asked the same question. :) They also said gosh, maybe we should be using Wireworld as a starting point to teach the basis of composable computing components to people with no prior experience. Which was pretty neat to hear people whose efforts are to teach people exactly those topics get excited about that same idea!
Is it really simpler than game of life? Both are istropic 2D cellular automata, but wireworld has 4 states whereas life has only 2.
If you’re going for absolute minimalism, maybe Rule 110 is an idea. It’s a 1D, 2-state cellular automaton and makes some pretty pictures.
I’m not sure minimalism in the rule set is the right thing to optimize for. The proof that rule 110 is Turing complete is very involved – It’s sort of as if complexity was removed from the automata and moved into the “interpretation” of what a particular state means.
Wireworld seems to be in a nice space where the automata is both simple and “obviously” Turing complete.
Idk about “obviously”, but certainly “more trivially” in that the proof is pretty small and/or slots into other common proofs. More or less just make a Wireworld NAND gate and say “ok you see where I’m going with this”.
I really want to get into Guile but I feel like picking up a language without any type system in 2023 is a misuse of one’s time. Are there any type systems that can be used with Guile, like Typed Racket or Coalton for Common Lisp?