[MLton] mlton talk
Thu, 18 Nov 2004 14:14:39 -0500 (EST)
On Dec. 8, I'm giving an informal talk on MLton to the Harvard PL
discussion group (which includes the C-- guys). The tentative title
(chosen by Norman) is: "Secrets of the MLton Optimization Masters".
There isn't a specific agenda, but I'm expecting it to serve a few
* This past week, the group looked at the POPL02 paper "Composing
Dataflow Analyses and Transformations" by Sorin Lerner, David Grove and
Craig Chambers out of Univ. of Washington. Two weeks after my talk,
we'll be looking at their upcoming POPL05 paper "Automated Soundness
Proofs for Dataflow Analyses and Transformations via Local Rules". The
C-- project has a joint grant with UW to integrate some of their work
into the C-- compiler. So, there's some interest in thinking about how
well this research fits into a production level compiler. Also, there
is some interest in thinking about what optimizations don't fit
squarely into the C/C++/Java compiler toolkit, and whether they fit the
* It's a chance to show off some of the down and dirty details. For
example, I mentioned that the SSA IL was a functional data structure,
without in place update; this fits well with the UW framework above.
On the other hand, the C-- compiler IL is imperative, and doesn't fit
as well. Our experience is that rebuilding the program at each
optimization isn't all that expensive. I think talking about the
property list technique will be fun too.
* It's a chance to advertize, get feedback, dialog, etc.
So, if anyone has particular aspects or points they think are important,
let me know.
I'm also planning on using it as a forcing function for working on the
wiki. My goal is to deliver the entire talk from the wiki and view-cvs.
To that end, I'm planning on getting more than enough information up on
the wiki, so that the discussion can go where it takes us. I envision
getting all the information from doc/hacker-guide, particularly the
Compiler Overview section (brought up to date, obviously). I'd also like
to get descriptions of all the ILs, passes between ILs, and optimizations,
along with links to the appropriate cvs files.
I'll probably make a first pass at getting some structure up over the