<div>Don&#39;t worry it eventually makes a point ...</div><div><br></div>Long while back some odd stumbling upons resulted in my embarking on a &quot;what ever happened to Alan Kay&quot; search.<div><br></div><div>According to Wikipedia.</div>
<div><span style="color:rgb(0,0,0);font-family:sans-serif;font-size:12.800000190734863px;line-height:19.200000762939453px">On August 31, 2006, Kay&#39;s proposal to the United States </span><a href="http://en.wikipedia.org/wiki/National_Science_Foundation" title="National Science Foundation" style="text-decoration:none;color:rgb(11,0,128);background-image:none;font-family:sans-serif;font-size:12.800000190734863px;line-height:19.200000762939453px">National Science Foundation</a><span style="color:rgb(0,0,0);font-family:sans-serif;font-size:12.800000190734863px;line-height:19.200000762939453px"> (NSF) was granted, thus funding </span><a href="http://en.wikipedia.org/wiki/Viewpoints_Research_Institute" title="Viewpoints Research Institute" style="text-decoration:none;color:rgb(11,0,128);background-image:none;font-family:sans-serif;font-size:12.800000190734863px;line-height:19.200000762939453px">Viewpoints Research Institute</a><span style="color:rgb(0,0,0);font-family:sans-serif;font-size:12.800000190734863px;line-height:19.200000762939453px"> for several years. The proposal title was: Steps Toward the Reinvention of Programming: A compact and Practical Model of Personal Computing as a Self-exploratorium.</span><sup id="cite_ref-7" class="" style="line-height:1em;color:rgb(0,0,0);font-family:sans-serif"><a href="http://en.wikipedia.org/wiki/Alan_Kay#cite_note-7" style="text-decoration:none;color:rgb(11,0,128);background-image:none;white-space:nowrap">[8]</a></sup><span style="color:rgb(0,0,0);font-family:sans-serif;font-size:12.800000190734863px;line-height:19.200000762939453px"> A sense of what Kay is trying to do comes from this quote, from the abstract of a seminar on this given at Intel Research Labs, Berkeley: &quot;The conglomeration of commercial and most open source software consumes in the neighborhood of several hundreds of millions of lines of code these days. We wonder: how small could be an understandable practical &quot;Model T&quot; design that covers this functionality? 1M lines of code? 200K LOC? 100K LOC? 20K LOC?&quot;</span><sup id="cite_ref-8" class="" style="line-height:1em;color:rgb(0,0,0);font-family:sans-serif"><a href="http://en.wikipedia.org/wiki/Alan_Kay#cite_note-8" style="text-decoration:none;color:rgb(11,0,128);background-image:none;white-space:nowrap">[9]</a></sup><br>
</div><div><br></div><div>So ok, I figured, sort of like the Institute For Advanced Study for CS, Southern California style, need to check it out and see what those genius types been up to.  <a href="http://www.vpri.org/">http://www.vpri.org/</a></div>
<div><br></div><div>I just clicked on the site and its been a few years but a lot of stuff is no longer there.  Back then there was more on COLA, NILE and OMETA and such (you can google and get some hits).  They were tools directed at the original concept of minimal succinct code libraries of complex systems.  The approach seemed to be the use a very, very high level domain specific language capable of capturing targeted complex software domains.  Then these high level DSLs are exploded to some runtime target via a power pattern matching expander.  OMeta was an example of these &quot;pattern matching, object oriented, meta macro compilers.&quot;</div>
<div><br></div><div>Anyway I did play around with OMeta and did a few things, but if one looks at the whole &quot;What is Racket, there is no Racket&quot; in the sense of design your own language, parser, syntax, the macro/module system etc, current Racket covers much of the same ground, and probably better than the VRI tool suite.</div>
<div><br></div><div>There is not too many examples really pushing the envelope in this area in the Racket system as of yet.  Redux, TR, are maybe the closest so far.   (Sorry Danny, your BF*K impl falls a tad short.)   One would have to completely change their mode of thinking from I have a software problem, let me sit down and code it in Racket with some DSL boiler-plate reducing macros, to let me sit down in front of this blank workspace and green field, top-down design a minimal succinct language which abstractly captures the problem and then leverage the meta/macro to explode it out into 1,000s of lines of runtime. </div>
<div><br></div><div>Anyway hard to describe, but if you poke around the remains of VRI at Ometa, Nile, etc. you&#39;ll see what I mean.</div><div><br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Nov 5, 2012 at 7:28 PM, Greg Hendershott <span dir="ltr">&lt;<a href="mailto:greghendershott@gmail.com" target="_blank">greghendershott@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Wow, talk about answers arriving at exactly the right time WRT having<br>
the questions first. This is incredibly helpful to me. For example<br>
barely 3 pages in and the lightbulb goes off re what is<br>
`syntax-local-value&#39;, and why. Looking forward to spending more time<br>
with this. Thank you.<br>
<div class="HOEnZb"><div class="h5"><br>
On Mon, Nov 5, 2012 at 5:09 PM, Matthew Flatt &lt;<a href="mailto:mflatt@cs.utah.edu">mflatt@cs.utah.edu</a>&gt; wrote:<br>
&gt; At Sun, 4 Nov 2012 11:31:04 -0800, Scott Klarenbach wrote:<br>
&gt;&gt; In other words, Is Racket simply a philosophy/convention of language<br>
&gt;&gt; oriented programming with convenient syntactic wrappers to this end, or<br>
&gt;&gt; does it more fundamentally extend Scheme to do things technically *impossible<br>
&gt;&gt; *in that language?<br>
&gt;<br>
&gt; The latter --- a more fundamental extension to Scheme.<br>
&gt;<br>
&gt; Here&#39;s our most recent attempt to explain:<br>
&gt;<br>
&gt;  <a href="http://www.cs.utah.edu/plt/publications/jfp12-draft-fcdf.pdf" target="_blank">http://www.cs.utah.edu/plt/publications/jfp12-draft-fcdf.pdf</a><br>
&gt;<br>
&gt; ____________________<br>
&gt;   Racket Users list:<br>
&gt;   <a href="http://lists.racket-lang.org/users" target="_blank">http://lists.racket-lang.org/users</a><br>
____________________<br>
  Racket Users list:<br>
  <a href="http://lists.racket-lang.org/users" target="_blank">http://lists.racket-lang.org/users</a><br>
</div></div></blockquote></div><br></div>