UPDATE: You might also be interested in my list of programmatic CAD tools.
Brendan introduced me to openscad while we were at the hacker space last night. I really like it and I can’t believe I didn’t try this tool out before. You essentially write your solid design in a programming language. Its simple to learn and very easy to get up and running.