IDL provides a way of writing SML procedures with C bodies. An SML ``client'' communicates with a C ``server'' by means of a very simple RPC protocol. The scheme is not particularly efficient, but seems to be fairly robust. We've used it in the construction of a number of systems whose interfaces are X-based. This distribution contains all you need to reconstruct the IDL (interface description language) compiler, together with various IDL libraries and a couple of (trivial) example programs. There's also a little documentation. Infelicities: 1. I used the Xaw kit because I was in a hurry: someone in less of a hurry (and who doesn't want to use eXene) should try to build an package which relies only on Xlib (rather than relying on the Xaw layer whose semi-object-oriented construction has left it somewhat braindamaged). 2. The callback system in idlxt requires a centralised dispatcher to be running on the SML side; this more-or-less forces the SML side to be event driven (rather than process/coroutine based). 3. There's a bug in SML - 0.75 which makes it hard to reap dead server processes which were started via ``execute''; their zombies just float around until the SML process itself dies. Bernard Sufrin Oxford, March 1993.