As a child, I loved LEGO. As an adult, I still love LEGO...
So here is some experimentation I did using CGA to generate LEGO bricks inside CityEngine. This is the first of several rules I wrote. They get progressively more complex. This one simply generates bricks, while the others assemble them. The dimensions and colors are true to the real thing. You can make any standard size, and you can make any non-standard size - like 17x9 brick. Here's some in a pile:
Below is a giant "fictional" brick, at 50x50x6: