<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:iweb="http://www.apple.com/iweb" version="2.0">
  <channel>
    <title>Byron Ellis, Ph.D.</title>
    <link>http://byronellis.name/Homepage/Home/Home.html</link>
    <description>I work for a company called AdBrite. I like it there.</description>
    <generator>iWeb 2.0.4</generator>
    <image>
      <url>http://byronellis.name/Homepage/Home/Home_files/imgp2484-filtered.jpg</url>
      <title>Byron Ellis, Ph.D.</title>
      <link>http://byronellis.name/Homepage/Home/Home.html</link>
    </image>
    <item>
      <title>Dynamic Language Runtime = Q?</title>
      <link>http://byronellis.name/Homepage/Home/Entries/2007/5/15_Dynamic_Language_Runtime_%3D_Q.html</link>
      <guid isPermaLink="false">f54fb7ce-15ec-41fe-93b9-e98bdd194d1e</guid>
      <pubDate>Tue, 15 May 2007 22:05:19 -0700</pubDate>
      <description>I use R a lot. Most of my software is built in R. For statistical analysis there isn’t really a better option out there. The various point-n-click software applications, SPSS, JMP and so on are too limited. SAS is too expensive and too hard to extend. Matlab simply isn’t sophisticated enough and the normal reason for using it, speed, doesn’t usually apply. Matlab’s BLAS and LAPACK implementations are probably better optimized, but not enough to warrant the loss of R’s superior data structure tools (not all data is a matrix after all). In any case, a tuned BLAS and LAPACK implementation gets you all the performance you’re likely to need.&lt;br/&gt;&lt;br/&gt;Though, R does have some problems and they’re problems that’ll be really hard to fix given the success it has enjoyed over the last few years. It’s a mature piece of software and it’s going to be really difficult to introduce anything that requires a major internals change (like the introduction of multiple evaluators). You’re also not going to be able to make more than marginal changes to the language. You’re going to get things like the introduction of integer literals, but you won’t be able to rethink things like the ‘&amp;lt;-’ assignment operator (pop quiz: b[b&amp;lt;-1] does what? Oh, right. Overwrites ‘b’ with -1. Excellent! Just what I wanted!).&lt;br/&gt;&lt;br/&gt;To address this “problem” (you may not think of it as a problem), people like Duncan Temple Lang and John Chambers talk about a mythical language ‘Q,’ the next generation statistical environment. They’re not sure what this language looks like: it could look like Python, it could look like Ruby. It might also look a lot like R. I think they’re pretty sure it doesn’t look like Fortran, but you never know. &lt;br/&gt;&lt;br/&gt;However, to do it at all, we would need to think about integration into the larger world of available software—something that comes up a lot in Duncan’s talks when he talks about integrating Java, Python and R to take advantage of features best suited to each language. Interestingly, this also seems to be the goal of the implementors of the Dynamic Language Runtime over at Microsoft.  Even better, they want to give us an SDK for the implementation of dynamic languages. &lt;br/&gt;&lt;br/&gt;This is really interesting because it gives us a way of hooking languages together with relative ease, their code all executes on the same virtual machines and it seems like they’ll be able to reflect their type systems (examples having Python and Ruby using each other’s code and type). It also gives us a way to experiment with languages. If you want to extend or change an existing language, your extension can live in peace and harmony with the original, letting people try out your stuff without giving up their existing systems. Finally, we can take advantage of a lot of the existing infrastructure available in systems like the CLR. &lt;br/&gt;&lt;br/&gt;It’s also going to be supported by Mono. This is nice since, as an OS X user, I don’t really want to use a .Net GUI. A Mono-based engine, on the other hand, could be embedded in a nice Cocoa GUI that provides the user interface while Mono provides the processing muscle.</description>
    </item>
    <item>
      <title>Well I guess it does work</title>
      <link>http://byronellis.name/Homepage/Home/Entries/2007/5/13_Well_I_guess_it_does_work.html</link>
      <guid isPermaLink="false">1d7c74e0-0aa9-429f-b724-d09d0c2ea199</guid>
      <pubDate>Sun, 13 May 2007 01:11:25 -0700</pubDate>
      <description>Astonishingly, more updates in the last two days than in the last year. Something must be working.</description>
    </item>
    <item>
      <title>Let's give this a try</title>
      <link>http://byronellis.name/Homepage/Home/Entries/2007/5/11_Lets_give_this_a_try.html</link>
      <guid isPermaLink="false">2f31449b-9f83-4021-85e8-821765e6f23d</guid>
      <pubDate>Fri, 11 May 2007 18:46:21 -0700</pubDate>
      <description>Let’s give this iWeb thing a try and see if it helps keep my website up to date. At the very least it’ll be less annoying than trying to hack Moveable Type templates and the like. Clearly, I’m getting lazy in my old age.</description>
    </item>
  </channel>
</rss>

