[Vm-dev] Tangential: A Lisp Interpreter Implemented in Conway's Game of Life

Vanessa Freudenberg vanessa at codefrau.net
Tue Jan 17 01:04:59 UTC 2023


On Mon, Jan 16, 2023 at 12:55 PM tim Rowledge <tim at rowledge.org> wrote:

>
> > On 2023-01-16, at 12:00 PM, karl ramberg <karlramberg at gmail.com> wrote:
> >
> > Very cool. I would not volunteer to refactor that :-D
> >
> > It's tricky to get high performance GameOfLife in Squeak.
>
> Have you never seen the BitBLT based version Dan Ingalls wrote a gazillion
> years ago? It used to be in the Squeak image, or at least I feel pretty
> sure it was.
>
> Oh, wait! It was written up in the Byte81 issue, so see
> https://archive.org/details/byte-magazine-1981-08/page/n181/mode/2up?view=theater
> and the following pages.


That still computes every cell in every generation, even if pretty
efficiently.

Simulations of this magnitude use the HashLife algorithm which memoizes
groups of cells in quad trees and can skip multiple generations ahead.
Don't think I've seen that implemented in Smalltalk.

A while ago I fell down a rabbit hole exploring how the OTCA Metapixel life
cell worked (the Lisp CPU gates and wires are constructed from cells using
non-traditional life rules, implemented on that meta cell).

Meta life inception:
https://www.youtube.com/watch?v=4lO0iZDzzXk

Fascinating.

Vanessa
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20230116/63d2106c/attachment.html>


More information about the Vm-dev mailing list