Carpentry Compiler - Yes The Target Is Wood
Written by Mike James   
Sunday, 08 December 2019

We tend to think that software, and compilers in particular, are concerned with other software rather than the real world. The Carpentry Compiler is different - its target really is wood.

Researchers at the University of Washington created Carpentry Compiler and presented it at SIGGRAPH Asia. The idea is simple to understand. If you want to make something in wood then you can describe the end result and the Carpentry Compiler will output instructions on how you can make it - taking into account the resources you have to hand.

"This paper presents HL-HELM, a high-level, domain-specific language for expressing abstract, parametric fabrication plans; it also introduces LL-HELM, a low-level language for expressing concrete fabrication plans that take into account the physical constraints of available manufacturing processes. We present a new compiler that supports the real-time, unoptimized translation of high-level, geometric fabrication operations into concrete, tool-specific fabrication instructions; this gives users immediate feedback on the physical feasibility of plans as they design them."

For me the interesting features are the way it uses a range of possible starting materials and the complex mix of tools available with which you have to work out how to make the object. It even works out a cutting plan that minimizes your work. If you play around with such things you might share my feeling that this spoils a lot of the fun. There is nothing so good as planning how to make something using what you have - but I can also see the attraction of automating the process if fun isn't your only concern.

To see some of the detail check out the video:

Here are some of the things it was able to make:

woodwork

You can find out exactly what each one is by consulting the paper, but I can tell you that the only really difficult one, i.e. C, is a bookcase.

As well as regarding software as mostly just about other software when we do think about using it to create real things we tend to think about using a single do-it-all machine like a 3D printer or a milling machine. The idea of compiling to a sequence of tasks using different tools is generalizable.

"Our key insight is that fabrication plans are programs."

What about jewellery compiler, metal small part, scale model compiler and so on... 

woody2

More Information

Carpentry Compiler Chenming Wu, Haisen Zhao, Chandrakana Nandi,  Jeffrey I. Lipton,  Zachary Tatlock and Adriana Schulz.

Related Articles

Dismantle That 3D Printer - Build An Air Hockey Robot Instead!

Instant Print 3D Objects Using Tomography

A 3D Printer For Plushies

WebGL 3D Sculpture Demo        

A Robot With A Chainsaw!       

3D Printing 101 - The Programmer's Angle        

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on, Twitter, Facebook or Linkedin.

 

Banner


D3.JS 6 Adds Iterable Support
01/09/2020

There's a new version of D3.js, the JavaScript library for manipulating documents based on data. Improvements in D3 v6 include a move to using native collections (Map and Set), as well as the abi [ ... ]



New Emojis Despite Coronavirus
25/09/2020

With Unicode 14.1 delayed because of Coronavirus, it looked as though we were going to be deprived of a new crop of emojis to puzzle over, but good news - there's going to be a minor emoji release for [ ... ]


More News

graphics

 



 

Comments




or email your comment to: comments@i-programmer.info

 

Last Updated ( Sunday, 08 December 2019 )