ImplicitCAD
A math-inspired CAD program in haskell. CSG, bevels, and shells
...Concepts like variables, control structures and abstraction are used, just as in programming. With the explosion of 3D printing, designing 3D objects has become an even more important problem. And it's a complicated one. We need to design complicated objects that precisely interface with each other. And often we don't want to just design a single object, but classes of objects, parameterized by variables. And we need to do this in collaboration. Generally, objects in programmatic CAD are built with Constructive Solid Geometry or CSG. Unions, intersections and differences of simpler shapes slowly build the object. ...