PrintTalk: a constraint-based imperative DSL for 3D printing

Jef Jacobs, Jens Nicolay, Christophe De Troyer, Wolfgang De Meuter · 2021

We present PrintTalk, a DSL to "program" 3D objects, called "gadgets". PrintTalk also features "topologies", which are predefined spacial arrangements of gadgets. Gadgets are composed by executing a gadget script (possibly consisting of subscripts) that 'draws' the gadget in the 3D scene. However, executing the script also returns a number of constraint variables. These variables can be constrained inside the gadget and can also be bound outside the gadget in order to constrain the produced gadgets after the facts. This is the essence of the gadget composition mechanism of PrintTalk.

Read the paper · More papers on PaperTik