<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><span>I'm writing a DSL for CAM ---&nbsp;</span><span style="font-size: 12pt;">(computer-aided-manufacturing), which primarily involves generating gcode for CNC machines (lathes, milling machines, 5-axis laser cutters, etc.). Do you guys know if anybody has done any CAM work in Racket, Scheme, Lisp, etc.? Perhaps one of these 30-day wonders from the PLTgames contest. :-)&nbsp;</span><span style="font-size: 12pt; background-color: transparent;">Actually, I'd be interested in hearing about any language used as a framework for CAM (I have no patience for point-and-click CAM software, but I'm only interested in DSL CAM systems).</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: 'times new roman', 'new york', times, serif; background-color: transparent; font-style: normal;"><span><br></span></div><div
 style="color: rgb(0, 0, 0); font-size: 16px; font-family: 'times new roman', 'new york', times, serif; background-color: transparent; font-style: normal;"><span>I dropped Scheme and went with FASM instead. I'm still interested in Scheme/Racket, but I can't think of any practical use for it at this time.</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: 'times new roman', 'new york', times, serif; background-color: transparent; font-style: normal;"><span><br></span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: 'times new roman', 'new york', times, serif; background-color: transparent; font-style: normal;"><span style="background-color: transparent;">I would be very dubious of using Racket to implement a DSL. Racket seems too complicated for most non-programmers to learn, and a DSL is supposedly for non-programmers to use (machinists are intelligent people, but there is a reason why they became machinists
 rather than programmers --- they just aren't interested in computer science). Also, most DSLs will need a custom data type, which implies that assembly-language is needed.&nbsp;</span><span style="background-color: transparent;">What exactly does Racket or Scheme offer in regard to implementing a DSL?&nbsp;</span><span style="background-color: transparent;">I admit that I don't know much about Racket or Scheme. These languages are supposed to be good for DSL implementation though, and I'm totally not getting why I would want to use them rather than good old assembly-language.</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: 'times new roman', 'new york', times, serif; background-color: transparent; font-style: normal;"><br></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: 'times new roman', 'new york', times, serif; background-color: transparent; font-style: normal;"><br></div><div style="color: rgb(0, 0, 0);
 font-size: 16px; font-family: 'times new roman', 'new york', times, serif; background-color: transparent; font-style: normal;"><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; margin-top: 5px; padding-left: 5px;"><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;"><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;">Message: 2<br>Date: Mon, 21 Jan 2013 13:01:05 +0000<br>From: Tim Brown &lt;<a ymailto="mailto:tim.brown@cityc.co.uk" href="mailto:tim.brown@cityc.co.uk">tim.brown@cityc.co.uk</a>&gt;<br>To: Matthias Felleisen &lt;<a ymailto="mailto:matthias@ccs.neu.edu" href="mailto:matthias@ccs.neu.edu">matthias@ccs.neu.edu</a>&gt;, Tim Brown<br>&nbsp;&nbsp;&nbsp; &lt;<a ymailto="mailto:tim.brown@timb.net" href="mailto:tim.brown@timb.net">tim.brown@timb.net</a>&gt;<br>Cc: <a ymailto="mailto:users@racket-lang.org"
 href="mailto:users@racket-lang.org">users@racket-lang.org</a><br>Subject: Re: [racket] variables within macros<br>Message-ID: &lt;<a ymailto="mailto:50FD3C11.9060101@cityc.co.uk" href="mailto:50FD3C11.9060101@cityc.co.uk">50FD3C11.9060101@cityc.co.uk</a>&gt;<br>Content-Type: text/plain; charset=UTF-8; format=flowed<br><br>On 20/01/13 22:26, Matthias Felleisen wrote:<br>&gt; On Jan 20, 2013, at 6:35 AM, Tim Brown wrote:<br>&gt;&gt;&gt;&gt; On Jan 18, 2013, at 12:36 PM, Tim Brown wrote:<br>&gt;&gt;&gt;&gt;&gt; A concrete example is that I am trying to write a #lang language.<br>&gt;&gt;&gt;&gt;<br>&gt;&gt;&gt;&gt; Honestly, I would never ever try to write a #lang first.<br>&gt;&gt;&gt;&gt; That's more than most people want.<br>&gt;&gt;<br>&gt;&gt; This "project" was prompted by plt-games.com,<br>&gt;<br>&gt; (What is that? Link doesn't work.)<br><br>Sorry Matthias, I could have sworn there was a hyphen in there:<br><a href="http://www.pltgames.com/"
 target="_blank">http://www.pltgames.com/</a><br><br> </div> </div> </blockquote></div>   </div></body></html>