1. 6

From the abstract:

We are investigating a new approach to compiling Standard ML (SML) based on four key technologies: intensional polymorphism [23], nearly tag-free garbage col lection [12, 46, 34], conventional functional language optimization, and loop optimization. To explore the practicality of our approach, we have constructed a compiler for SML called TIL, and are thus far encouraged by the results: On DEC ALPHA workstations, programs compiled by TIL are roughly three times faster, do one-fth the total heap allocation, and use one half the physical memory of programs compiled by SML of New Jersey (SML/NJ). However, our results are still preliminary we have not yet investigated how to improve compile time; TIL takes about eight times longer to compile programs than SML/NJ. Also, we have not yet implemented the full module system of SML, although we do provide support for structures and separate compilation. Finally, we expect the performance of programs compiled by TIL to improve signicantly as we tune the compiler and implement more optimizations.


  2. 3

    what’s the date on this?

    1. 3

      looks like it’s from 1996

      1. 2

        what’s the date on this?

        What, you don’t think the DEC Alpha is a modern, relevant architecture? /s

        1. 1

          Funny enough, the folks at crash-safe.org built their first prototype as an Alpha. I was like, “Huh? Couldnt it be something that wasnt buried by Intel and Fujitsu?”

        2. 1

          looks like 1996 or so, based on which ACM journal it was going to hit.

        3. 3

          I didn’t know about this one. Thanks!

          They cite the folks in FLINT group that I assumed invented the optimizing part. Turns out they may have invented type-based, then this team did optimizing, and people went from there. Those publications are here with stuff this paper cites on the bottom since it’s older. For those interested in verified compilers, I also cited this kind of work in some discussions since they applied type-driven compiler to that. Example is Type-Based, Certifying Code (slides) that builds on Necula’s Proof-Carrying Code (see Bibliography).

          1. 2

            I didn’t either! Like you, I had seen the others, but I hadn’t seen this one, and stumbled upon it this morning. I was looking for Lucacardelli’s Compiling a Functional Language and Amber paper and found this.

            1. 4

              I’m still not convinced Luca Cardelli isn’t three geniuses in a trench coat. The amount of research output from that one person is incredible.

              Same with Peyton-Jones.

              1. 2

                Im with you on that. I didnt want to waste his time tagging him in anything less than Modula-4 or a Rust killer. ;)

          2. 1

            Today I learned…