<HTML><BODY style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space; "><DIV>I didn't think much of the "Reliability" portion of the presentation.  I experienced my typical distaste for static typing, overcomplicated syntax, and early binding; this is common when I see a C++ programmer's wishlist for an ideal language.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT class="Apple-style-span" face="Courier New"><B>GetElement(as:[]string, i:int):string=<BR></B></FONT><FONT class="Apple-style-span" face="Courier New"><B>    </B></FONT><FONT class="Apple-style-span" face="Courier New"><B>if(n:nat&lt;as.length=i)<BR></B></FONT><SPAN class="Apple-tab-span" style="white-space:pre">        </SPAN><SPAN class="Apple-tab-span" style="white-space:pre">        </SPAN><FONT class="Apple-style-span" face="Courier New"><B>as[n]<BR></B></FONT><FONT class="Apple-style-span" face="Courier New"><B>    </B></FONT><FONT class="Apple-style-span" face="Courier New"><B>else</B></FONT></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><SPAN class="Apple-tab-span" style="white-space:pre">        </SPAN><SPAN class="Apple-tab-span" style="white-space:pre">        </SPAN><FONT class="Apple-style-span" face="Courier New"><B>“Index Out of Bounds”</B></FONT></DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>WTF?  This is a helpful type system?  Why just not write a test to make sure that the value is in bounds, since the type definition itself is code (with extra new syntax to learn). </DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>Also, what about mobile code?  If I bring a new object (containing new code) into someone else's virtual world, will it statically compile it against everyone else's code in the environment?  Even if it does, how do we know that the semantics match up?  This is a hard problem, and static typing doesn't magically fix it (he does admit that Haskell-style type inference doesn't scale to "large hierarchies of open-world modules").</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>The "Concurrency" portion of the presentation is more interesting.  I like how he breaks down the computations done by a game engine by CPU budget and parallism/synchronization requirements.  I've now heard about Transactional Memory from a few excellent hackers, and definitely intend to read up on it.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>Two other things that look interesting are Lenient Evaluation and STRef.  My functional programming skills can use some practice, and I intend to find some time to learn about these concepts.  However, I question whether the general population of programmers is ready for the higher levels of abstraction required to program functionally.  But maybe the massively parallel computers that we'll all have in ~10 years (depending on what you call massively parallel) will force the issue.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>Josh</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV><BR class="khtml-block-placeholder"></DIV><BR><DIV><DIV>On Feb 6, 2006, at 6:17 AM, <A href="mailto:goran@krampe.se">goran@krampe.se</A> wrote:</DIV><BR class="Apple-interchange-newline"><BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">...can be found over at Lambda:</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><A href="http://lambda-the-ultimate.org/node/1277">http://lambda-the-ultimate.org/node/1277</A></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">The presentation is from a game developer and was quite interesting to</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">look through (the slides are pretty self explanatory). It would be very</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">interesting to hear the reactions on these issues from a Squeak</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">perspective - like what do the Croqueteers say and what do you say</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Bryce?</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">If a future Squeak could be interesting for this segment (game dev) then</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">things would really heat up.</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">regards, Göran</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV> </BLOCKQUOTE></DIV><BR></BODY></HTML>