
Life, part 34 - azhenley
https://ericlippert.com/2020/09/10/life-part-34/
======
1f60c
If any of you, like me, were looking for part 1:
[https://ericlippert.com/2020/04/13/life-
part-1/](https://ericlippert.com/2020/04/13/life-part-1/) (that's the
introduction; I found it quite helpful to understand what we're looking at
here.)

------
adeveloper870
Forgive me for being rude, but is this exercise simply exploration? It appears
to me the author is looking for something (within their discovery) - but I am
at a loss to what that could be.

~~~
ericlippert
The question -- if sincerely asked -- is not rude.

My goal for this blog, which I have written for 17 years, is to write about
algorithms, programming techniques, language design, and other stuff I find
interesting. If you find it interesting too, consider subscribing.

The goal of this particular series, which should top out at 36 episodes, is to
make a survey of different techniques for computing the Conway's Life
automaton. The specific point I want to make in doing so is: the standard
advice for optimization is to make a relatively naive implementation, profile,
and then attack the slowest part by micro-optimizing it. Though this can be
done in a principled manner, there are some algorithms where we can take
advantage of facts about the "business domain" to craft much more performant
algorithms than we could by simply finding small efficiencies in the inner
loop. Life is definitely such an algorithm; there are opportunities for
compression of both time and space that can lead to surprising performance
optimizations.

My advice would be to start the series from the first episode rather than
trying to start in the middle.

