
Sprout Life - signa11
https://github.com/ShprAlex/SproutLife/blob/master/README.md
======
shapiro
Hey guys, I made this, I would be happy to tell you more about it. The idea is
pretty simple, static 2x2 blocks are replaced by another shape that creates a
lot of growth. That replacement is treated like the birth of a new organism.
The goal of the organism is to produce more 2x2 blocks. It can have slight
mutations that make it faster to produce these blocks. What's interesting
about this is that rather than having reproduction be a given, an organism
spends it's whole life building a structure that lets it reproduce. It can
collide with other organisms and disrupt them. It's simple, but it's open
ended and is fast to compute.

~~~
jakeogh
Nice. I feel like there's a relation to[1], but it's not obvious to me how to
apply it.

[1]:
[https://news.ycombinator.com/item?id=11078635](https://news.ycombinator.com/item?id=11078635)

------
t3hprogrammer
Awesome! Replacing one block with another is clever, although it's tricky when
organisms of one species are adjacent to organisms of another species.

I've played around with a similar idea in falling sand games [0], where
individual cells interact to create new cells, but I got stuck developing a
language flexible enough for greater expressiveness while still being
performant.

[0]
[https://github.com/ericleong/sand.js](https://github.com/ericleong/sand.js)

~~~
shapiro
You were developing a new language? Javascript is great because you can see
the results in a browser. I'm a bit torn because java is easier for developing
this kind of data intensive thing.

------
eggy
Very cool! I'm reading and coding along with Sher's Neuroevolution Through
Erlang to learn the benefits of Erlang/BEAM for just such stuff. I believe
somebody is also translating it to Elixir. The visualizations are great. I
guess Java doesn't have a problem with distributed computing or processes for
such work?

~~~
shapiro
This works on just a single machine for now. I imagine it would be relatively
easy to distribute. One could simply clone a bunch of applications. Then
creatures from cloned grids could be swapped, or grids could be placed
adjacently to determine who the winners are...

------
GeorgeHahn
Anyone who enjoys this sort of work may also like the book Complexity by
Waldrop, which covers the history of Complexity theory through the eyes of the
people who created it. It's a really fun story that's inspirational and
intellectually satisfying.

------
taneq
"The enemy of my enemy is my food."

I love this restatement of RPS.

------
dfischer
This is pretty cool. Kudos.

