CFDG - Context Free Design Grammar
CFDG is a programming language I made for generating designs. You write a simple text file, and it spits out a huge image (a gigapixel or more). It was inspired by human language and grammar. In the same way that a written grammar describes rules for forming sentences, CFDG files describe rules for growing images. This is the simplest useful CFDG:
startshape CIRCLE

It draws a circle. Nature’s hello. In case you didn’t guess, “CIRCLE” is built into CFDG. It’s one of only a couple shapes CFDG knows how to draw. If you want something more complicated, you have to define it yourself. Like so:
startshape HELLOWORLD
rule HELLOWORLD {
CIRCLE { }
CIRCLE {size 0.16 x 5}
}

Up until now, CFDG only knew how to draw a shape called CIRCLE. But now it has a new shape, HELLOWORLD, which consists of 2 CIRCLES, one smaller than another, and 5 units away.
I mentioned above that it was inspired by human languages. A “grammar” is a set of rules and symbols that generate a “language”; for something to be in the language, it has to obey the rules of the grammar. The same is true for a CFDG file: when you write a CFDG file, a world of possible images is created. When you click “Render,” one of them is chosen. As a final example, here is a CFDG that describes trees:
startshape SEED1
rule SEED1 {
SQUARE{}
SEED1 {y 1.0 size 0.99 rotate 1.5 brightness 0.02}
}
rule SEED1 0.05 {
SEED2 {}
}
rule SEED2 {
SQUARE{}
SEED2 {y 1.0 size 0.99 rotate -1.5}
}
rule SEED1 0.05 {
SQUARE{}
SEED2 {y 1.0 size 0.99 rotate 1.5}
SEED1 {y 1.0 size 0.6 rotate -60}
SEED2 {y 1.0 size 0.5 rotate 60}
}
rule SEED2 0.05 {
SQUARE{}
SEED1 {y 1.0 size 0.99 rotate 1.5}
SEED2 {y 1.0 size 0.6 rotate -60}
SEED1 {y 1.0 size 0.5 rotate 60}
}
The above file outputs this tree:

That tree comes out different every time. And the best part? Now that you’ve invented a new shape called “seed” you can plant an entire forest with just 2 more lines. (Seriously!)
I’ve left out a lot of details here. CFDG supports color, squares, triangles, partial transparancy, and other niceties. If CFDG is at all interesting to you, I recommend Context Free, a program for Windows and OS X. It’s free, safe, and fast.