1

Using clojurescript and quil.

Any point can only be occupied by a single dot.
A line cannot intersect another line.
Every tick a point may spawn 0 or more adjacent points.

In this implementation adjacent points are chosen randomly, both in number and direction. The result is somewhere between Conway's Game of Life and white noise.

This implementation is hella slow, most time is spent drawing the lines. This was optimized so that adjacent parallel lines are drawn in a single operation, but that produced negligible benefit.

git clone https://github.com/mediocregopher/viz.git
git checkout cb3d9d871d72b4f4487d175e73f0c30041963c42