This article is from the Object-Oriented Technology FAQ, by Bob Hathaway email@example.com with numerous contributions by others.
Date: Fri, 19 May 1995 20:51:05 PDT
From: Bill Janssen <firstname.lastname@example.org>
Subject: New ILU 1.8 Common Lisp support available
Revised support for using ILU with Common Lisp is now available as
1) The Common Lisp support no longer has to load C code for each ILU
module loaded, so CL implementations without that capability may use
ILU. This also speeds up loading of ILU modules considerably.
2) CORBA-style union support is now there.
3) ILU dynamic object creation is now fully supported. That is, an
ILU kernel server may now be created which calls back to Lisp
functions to create objects on demand, rather than having to have them
available before clients make calls on them.
4) A non-threaded Franz ACL implementation of the ILU support is now
included, solely as an example of how to support ILU in Common Lisp
implementations without threads. Of course, if your CL has threads, your
ILU support should use them.
5) A new version of the ILU manual is included, with the appropriate
changes to the CL chapter.
6) A modified version of examples/test1/ is provided, with Lisp
examples of the test1 program.
``But what's ILU, anyway?''
The Inter-Language Unification system (ILU) is a multi-language object
interface system. The object interfaces provided by ILU hide
implementation distinctions between different languages, between
different address spaces, and between operating system types. ILU can
be used to build multi-lingual object-oriented libraries ("class
libraries") with well-specified language-independent interfaces. It
can also be used to implement distributed systems. It can also be used
to define and document interfaces between the modules of
non-distributed programs. ILU interfaces are specified in ILU's
Interface Specification Language.
The 1.8 release of ILU contains support for the programming languages
Common Lisp, C++, ANSI C, Modula-3, and Python). It has been installed
on many flavors of UNIX, including SPARC machines running SunOS 4.1.3
and Solaris 2, SGI MIPS machines running IRIX 5.2, Intel 486 machines
running Linux 1.1.78, DEC Alpha machines with OSF/1, IBM RS/6000
machines running AIX, and HP machines running HP/UX. A port of ILU to
the Microsoft Windows 3.1 and Windows NT environments has been
finished, and will form part of the 1.9 release. ILU supports both
threaded and non-threaded operation.
One of the implementation goals of ILU is to maximize compatibility
with existing open standards. As a result, ILU provides support for
use of the OMG CORBA IDL interface description language, and can be
thought of as a CORBA ORB system (though with omissions from and
extensions to the CORBA spec). As another result, ILU includes a
self-contained implementation of ONC RPC, and it is possible to
describe and use existing RPC services as ILU objects. ILU is
available free from `ftp://ftp.parc.xerox.com/pub/ilu/ilu.html'.
Bill Janssen <email@example.com> (415) 812-4763 FAX: (415) 812-4777
Xerox Palo Alto Research Center, 3333 Coyote Hill Rd, Palo Alto, CA 94304