[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: what is the problem?



Simon Cozens wrote:

>  SAC, Single Assignment C.
> "Single Assignment C --- Entwurf und Implementierung einer funktionalen
> C-Variante mit spezieller Unterstützung shape-invarianter Array-Operationen. 
> ", Sven-Bodo Scholz, University of Kiel, 1996.

I haven't read this thesis, but I can imagine it's pretty useful.
It's presumably based on the simple realization that C is the de facto 
intermediate language for lots of higher-level language compilers.
Producing a good intermediate representation for these languages is
hard, and producing a new one entirely would fail to leverage on the
wide porting of C.  SAC is presumably a derivative of C that is both
easy for compilers to generate and that yields better optimizations
in the final code -- whether by rewriting the code and then reusing an 
existing C compiler, or by providing its own compiler, I don't know.
(The latter strategy is not useless -- since many compilers do
generate single-assignment C anyway, they could perhaps use SAC as a
switched-in back-end.)

> Bigwig (http://www.brics.dk/bigwig/) is Claus Braband's PhD effort at
> the University of Aarhus. He's not written up yet.

So why are we flaming him already?

Anyway, Bigwig is a pretty nice idea: building a type system that
guarantees the validity of your documents.  That's the big idea -- the
rest of it is the usual sessions and other stuff that we all provide.
But that big idea is hard to incorporate into ad hoc languages.

> Popping over the pond and briefly cheating, Borneo was a Master's project
> for Joseph Darcy at Berkeley.

First I've seen of it, and it looks pretty good.  This actually looks
like the kind of project you should least object to.  He's not
building a new language; he's working conservatively within the
confines of Java for the most part.  Berkeley has a long history of
fixing broken floating point standards -- a pretty important problem
for many people, especially those who do scientific computation.  I
believe Guy Steele spoke last year about fixing Java's FP.  If Guy's
reading this thread, perhaps he could comment on Borneo.  (Given that
Darcy moved to Sun, he may have had some influence on this.)

> Oh, and of course SELF was Craig Chambers' thesis:
> http://www.sunlabs.com/research/self/papers/chambers-thesis/thesis.ps.Z

No, SELF was invented before Chambers's thesis.  And the contributions 
from the SELF project are, as others have pointed out, all over JITs.

Shriram