(reposted for readability) Comonads, like trees or stacks, are data structures which guide a computation along a chosen line and imply a mode of reasoning. That they first arose in the context of category theory should not make them lesser citizens.
What the comonad captures is the essence of locality[◊], like it's dual captures the essence of encapsulation. The comonadic cellular automata, assigns to each cell a world with that cell at its center (subjectivity?). That this assignment can be done *naturally* (via the natural lifting δ: W -> W²) and progressed (via the composition W_β ○ δ) means that one can handle many of the implementation details in the coalgebra, which a language's compiler can be tuned to exploit. Two points of exploitation that come immediately to mind being: 1. parallelization (especially wrt adaptive chunking) 2. algebrao-functional reduction (I'm not sure what to technically call this) Beyond this, I rather like not having to build in the topological constraints in the low level details. Instead, as in my implementation[!], one can allow computation over doubly unbounded lists and lists of lists while only making the judicious choice of board size and it's accompanying details later. In practice, I like this style of implementation because it generalizes nicely while remaining structured (maintainability) and suggests a clearer perspective from which to understand cellular automata, that of a naturally localized computation. The reason I mention this is that the comonadic-style walls-off each cell, in a sense, much like David Lewis' counterparts. To write a shuffle in this style is easy, but I suspect that to purely write a sort this way is impossible. I would love to know whether this is, in fact, true. [□] Yes, I know that his theory is less popular than Kripke's, but hey. https://en.wikipedia.org/wiki/Counterpart_theory [◊] Arguably, this "essence of locality" is an expression of *possible worlds*, via the adjunction: X -> □Y iff X -> Y, or ◊ ⊣ □. More on this can be read here: https://ncatlab.org/nlab/show/necessity+and+possibility#:~:text=3.-,Possible%20worlds%20via%20first-order%20logic%20and%20type%20theory,-One%20common%20philosophical [!] But the original idea here isn't mine, I followed up on ideas written here: http://blog.sigfpe.com/2006/12/evaluating-cellular-automata-is.html
.-- .- -. - / .- -.-. - .. --- -. ..--.. / -.-. --- -. .--- ..- --. .- - . FRIAM Applied Complexity Group listserv Zoom Fridays 9:30a-12p Mtn UTC-6 bit.ly/virtualfriam un/subscribe http://redfish.com/mailman/listinfo/friam_redfish.com FRIAM-COMIC http://friam-comic.blogspot.com/ archives: 5/2017 thru present https://redfish.com/pipermail/friam_redfish.com/ 1/2003 thru 6/2021 http://friam.383.s1.nabble.com/