■■ ■■■ ■  ■■ ■■■ ■■■■■■   ■■ ■■ ■■■■■ ■■   ■   ■■ ■   ■■■■■■■   ■■■■■■■■■■■■■■■     ■■    ■■   ■ ■■    ■■■■■ ■■    ■■■ ■■■■■■ ■■  ■■ ■■     ■ ■■■■■ ■■■■■■■  ■■    ■■■ ■■  ■■■■■■  ■■    ■■■       ■■■■   ■ ■■ ■■■ ■ ■■■■     ■■■■■■  ■■■■ ■■■■■■■ ■■■ ■■     ■■■ ■ ■■ ■■     ■■■■■ ■■■■■■■■  ■■■■ ■■■  ■■ ■■■■   ■■ ■■■ ■■■■■  ■ ■■■■■■■ ■■ ■■■■■■ ■■■ ■■ ■■ ■   ■■■■■■■■■■■■■■■ ■■  ■■■■■■■■■■ ■■        ■■  ■ ■■ ■ ■■ ■   ■■  ■■■  ■■■■ ■   ■■■■   ■■■■■■  ■■ 
■■■■■ ■■■ ■■■■■ ■■■    ■  ■■■■■■■■   ■■■■  ■■  ■■■■■  ■■     ■  ■■             ■    ■■■   ■■■  ■■■■■   ■■   ■■■■   ■■ ■■■    ■■■■ ■■■■■■    ■■■■   ■■■     ■ ■■■   ■■ ■■■■ ■■    ■ ■■■   ■■ ■      ■■  ■  ■■■■■■■ ■■■■■  ■    ■■    ■ ■■  ■■■     ■■■ ■■■■    ■■ ■■■■■■■■■    ■■   ■■■      ■ ■■  ■■■ ■ ■■■■■  ■  ■■■■■ ■■■   ■ ■■■■     ■■■■■■    ■■■ ■■■■■■■■■  ■■             ■■■■ ■■        ■■■■       ■■■ ■■■■■■■■■■■■  ■■■ ■■ ■ ■■  ■■■  ■■  ■  ■■    ■ ■■■ 
■   ■■■ ■■■   ■■■ ■   ■■ ■■      ■  ■■  ■ ■■■ ■■   ■ ■■■    ■■ ■■■            ■■   ■■ ■  ■■ ■ ■■   ■  ■■■  ■■  ■  ■■■■■ ■   ■■  ■■■    ■   ■■  ■  ■■ ■    ■■■■ ■  ■■■■■  ■■■■   ■■■■ ■  ■■■■■     ■■■ ■■ ■■     ■■■   ■ ■■   ■■■   ■■■■■ ■■ ■    ■■ ■■■  ■   ■■■■■       ■   ■■■  ■■ ■     ■■■■■ ■■ ■■■■■   ■ ■■ ■■   ■■■ ■  ■■■■  ■    ■■    ■   ■■ ■■■       ■ ■■■            ■■  ■■■■       ■■  ■      ■■ ■■■          ■ ■■ ■■■■■■■■■ ■■ ■ ■■■ ■■ ■■■   ■■■■ ■■
■  ■■ ■■■ ■  ■■ ■■■  ■■■■■■     ■■ ■■■ ■■■■ ■■■■  ■■■■ ■   ■■■■■ ■           ■■■  ■■■■■ ■■■■■■■■  ■■ ■■ ■ ■■■ ■■ ■■   ■■■  ■■■ ■■ ■   ■■  ■■■ ■■ ■■■■■   ■■  ■■■ ■■   ■ ■■  ■  ■■  ■■■ ■■   ■    ■■ ■■■■■■■    ■■ ■  ■■■■■  ■■ ■  ■■   ■■■■■■   ■■■■■ ■ ■■  ■■   ■      ■■  ■■ ■ ■■■■■    ■■   ■■■■■■   ■  ■■■■■■■■  ■■ ■■■ ■■  ■ ■■   ■■■   ■■  ■■■■■ ■      ■■■■ ■           ■■■ ■■  ■      ■■■ ■■     ■■■■■ ■         ■■■■■■■       ■■■■■■■■ ■■■■■■ ■  ■■  ■■■ 
■ ■■■■■ ■■■ ■■■■■ ■ ■■    ■    ■■■■■ ■■■  ■■■  ■ ■■  ■■■  ■■   ■■■          ■■ ■ ■■   ■■■      ■ ■■■■■■■■■■ ■■■■■■■  ■■ ■ ■■ ■■■■■■  ■■■ ■■ ■■■■■■   ■  ■■■ ■■ ■■■■  ■■■■■ ■■ ■■■ ■■ ■■■■  ■■   ■■■■■     ■   ■■■■■ ■■   ■ ■■■■■ ■■■  ■■    ■  ■■   ■■■■■■ ■■■  ■■     ■■■ ■■■■■■■   ■   ■■■  ■■    ■  ■■ ■■      ■ ■■■■■ ■■■■ ■■■■■  ■■ ■  ■■■ ■■   ■■■     ■■  ■■■          ■■ ■■■■ ■■     ■■ ■■■■    ■■   ■■■        ■■     ■      ■■      ■■■    ■■■ ■■■ ■■ ■■

notes

The above is a randomly generated, one-dimensional cellular automaton, using Rule 110. This version is written in JavaScript and is generated at the client. The source code is here.

Regenerate.

This page is generated by outputting a series of Unicode ‘BLACK SQUARE’ (U+25A0) characters into a <pre> block with a font size of .5pt, which is so small they are rendered as a single pixel. View the page source to see the pattern.

The pattern here is limited to a 450 by 550 matrix, but you can easily take the code and run it on your local server as a simple way to observe patterns of a much larger size. There is a Java-based version of this page that runs the automaton at the server here.

For Windows users: if you have “Smooth edges of screen fonts” checked in the Display Properties, the image may be somewhat gray, but it is still visible.

For Mozilla users: if you have a minimum font size set to other than “none” the effect will probably be ruined and you'll see the ‘M’ pattern directly.