{"id":6871,"date":"2019-12-30T10:00:00","date_gmt":"2019-12-30T10:00:00","guid":{"rendered":"https:\/\/gtechbooster.com\/?p=6871"},"modified":"2023-06-21T11:42:50","modified_gmt":"2023-06-21T11:42:50","slug":"compiler-aims-at-wood-fabrication","status":"publish","type":"post","link":"https:\/\/gtechbooster.com\/compiler-aims-at-wood-fabrication\/","title":{"rendered":"Compiler aims at Wood fabrication"},"content":{"rendered":"\n<p>We tend to think that software, and compilers in particular, are \nconcerned with other software rather than the real world. The&nbsp;Carpentry \nCompiler is different &#8211; its target really is wood.<\/p>\n\n\n\n<div class=\"gtech-migrated-from-ad-inserter-placement-2 gtech-entity-placement\" style=\"text-align: center;\" id=\"gtech-221969544\"><div id=\"gtech-2079451638\" style=\"margin-right: auto;margin-left: auto;text-align: center;\"><a data-bid=\"1\" data-no-instant=\"1\" href=\"https:\/\/gtechbooster.com\/linkout\/17207\" rel=\"noopener\" class=\"notrack\" aria-label=\"26001\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/gtechbooster.com\/media\/2023\/01\/26001.jpeg\" alt=\"\"  srcset=\"https:\/\/gtechbooster.com\/media\/2023\/01\/26001.jpeg 1024w, https:\/\/gtechbooster.com\/media\/2023\/01\/26001-768x960.jpeg 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" width=\"500\" height=\"625\"  style=\"display: inline-block;\" \/><\/a><\/div><\/div><p>Researchers at the University of Washington created Carpentry \nCompiler and presented it at SIGGRAPH Asia. The idea is simple to \nunderstand. If you want to make something in wood then you can describe \nthe end result and the Carpentry Compiler will output instructions on \nhow you can make it &#8211; taking into account the resources you have to \nhand.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><em>&#8220;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.<\/em>&#8220;<\/p><\/blockquote>\n\n\n\n<p>For me the interesting features are the way it uses a range of \npossible starting materials and the complex mix of tools available with \nwhich you have to work out how to make the object. It even works out a \ncutting plan that minimizes your work. If you play around with such \nthings you might share my feeling that this spoils a lot of the fun. \nThere is nothing so good as planning how to make something using what \nyou have &#8211; but I can also see the attraction of automating the process \nif fun isn&#8217;t your only concern.<\/p>\n\n\n\n<p>To see some of the detail check out the video:<\/p>\n\n\n\n<figure class=\"wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Carpentry Compiler\" width=\"1290\" height=\"726\" src=\"https:\/\/www.youtube.com\/embed\/N1eK1x_vz7I?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption><strong>Carpentry Compiler<\/strong><\/figcaption><\/figure>\n\n\n\n<p>Here are some of the things it was able to make:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"287\" src=\"https:\/\/gtechbooster.com\/media\/2019\/12\/woodwork.jpg\" alt=\"woodwork\" class=\"wp-image-6872\" srcset=\"https:\/\/gtechbooster.com\/media\/2019\/12\/woodwork.jpg 600w, https:\/\/gtechbooster.com\/media\/2019\/12\/woodwork-500x239.jpg 500w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/figure><\/div>\n\n\n\n<p>You can find out exactly what each one is by consulting the paper, \nbut I can tell you that the only really difficult one, i.e. C, is a \nbookcase.<\/p>\n\n\n\n<p>As well as regarding software as mostly just about other software \nwhen we do think about using it to create real things we tend to think \nabout using a single do-it-all machine like a 3D printer or a milling \nmachine. The idea of compiling to a sequence of tasks using different \ntools is generalizable.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><em>&#8220;Our key insight is that fabrication plans are programs.&#8221;<\/em><\/p><\/blockquote>\n\n\n\n<p>What about jewellery compiler, metal small part, scale model compiler and so on&#8230;\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"538\" height=\"507\" src=\"https:\/\/gtechbooster.com\/media\/2019\/12\/woody2.jpg\" alt=\"\" class=\"wp-image-6873\" srcset=\"https:\/\/gtechbooster.com\/media\/2019\/12\/woody2.jpg 538w, https:\/\/gtechbooster.com\/media\/2019\/12\/woody2-354x334.jpg 354w\" sizes=\"auto, (max-width: 538px) 100vw, 538px\" \/><\/figure><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">More Information<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/grail.cs.washington.edu\/projects\/carpentrycompiler\/files\/CarpentryCompiler.pdf\">Carpentry Compiler Chenming Wu, Haisen Zhao, Chandrakana Nandi,\u00a0 Jeffrey I. Lipton,\u00a0 Zachary Tatlock and Adriana Schulz.<\/a><\/li><\/ul>\n<div class=\"gtech-end-cont gtech-entity-placement\" id=\"gtech-778859498\"><div id=\"gtech-2270992604\" style=\"margin-right: auto;margin-left: auto;text-align: center;\"><a data-bid=\"1\" data-no-instant=\"1\" href=\"https:\/\/gtechbooster.com\/linkout\/17207\" rel=\"noopener\" class=\"notrack\" aria-label=\"26001\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/gtechbooster.com\/media\/2023\/01\/26001.jpeg\" alt=\"\"  srcset=\"https:\/\/gtechbooster.com\/media\/2023\/01\/26001.jpeg 1024w, https:\/\/gtechbooster.com\/media\/2023\/01\/26001-768x960.jpeg 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" width=\"500\" height=\"625\"  style=\"display: inline-block;\" \/><\/a><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>We tend to think that software, and compilers in particular, are concerned with other software rather than the real world. The&nbsp;Carpentry Compiler is different &#8211; 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 [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":6874,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_gspb_post_css":"","footnotes":""},"categories":[1915],"tags":[1010,741],"class_list":["post-6871","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ndocs","tag-compiler","tag-computer-software"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":6}},"_links":{"self":[{"href":"https:\/\/gtechbooster.com\/api-json\/wp\/v2\/posts\/6871","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gtechbooster.com\/api-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gtechbooster.com\/api-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gtechbooster.com\/api-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/gtechbooster.com\/api-json\/wp\/v2\/comments?post=6871"}],"version-history":[{"count":0,"href":"https:\/\/gtechbooster.com\/api-json\/wp\/v2\/posts\/6871\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/gtechbooster.com\/api-json\/wp\/v2\/media\/6874"}],"wp:attachment":[{"href":"https:\/\/gtechbooster.com\/api-json\/wp\/v2\/media?parent=6871"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gtechbooster.com\/api-json\/wp\/v2\/categories?post=6871"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gtechbooster.com\/api-json\/wp\/v2\/tags?post=6871"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}