ColloquiaMatthias Blume's talk on Wed. May 29th

Margery Ishmael marge at cs.uchicago.edu
Sat May 25 10:45:37 CDT 2002


Wednesday, May 29th, 2002
2:30 p.m.
Ryerson 251

Speaker: MATTHIAS BLUME, Bell Laboratories

Title: Having Fun with Types or
Teaching an ML Compiler How to Speak C "natively"

Abstract:
In this talk I will present a new foreign function interface between
Standard ML and C.  The design is based on an encoding of the C type
system (in full generality) as abstract ML types. The encoding makes
direct manipulation of C data structures from ML possible, without
requiring knowledge of low-level layout details -- neither for the C nor
for the ML case.  Moreover, since the concrete representations underlying
our abstract C types are kept identical to those that the C compiler
itself uses, there is no need for any marshaling. This avoids all
potential semantic or efficiency-related pitfalls associated with
marshaling.

The talk will start with an overview of the mechanisms involved and show
how they fit in with the rest of the SML/NJ implementation and its
compilation management system. I will then focus on some of the more
interesting typing issues, including some that intitially caused problems
with respect to robustness and scalability but which have recently been
solved.

Host: Professor David MacQueen

*The talk will be followed by refreshments in Ryerson 255*





More information about the Colloquium mailing list