Summary: Lucid vs. Allegro

Skip to first unread message


Nov 23, 1989, 4:10:43 AM11/23/89
Recently I posted an article to comp.lang.lisp in which I asked for a
comparison of Lucid and Allegro, both for the Sun 4.
The first reply I got was from Steve Anderson of the Cognitive Science Center
at Johns Hopkins, who urged me to post a summary. Well, here it is:

Actually, there seems to be much interest in this comparison; I got lots of
replies asking for a summary. But there does NOT seem to be much experience in
using one (or preferably both) of the systems in question; I only got 8 real
answers, but 3 of them are comming from vendors.
2 of these ones are talking about other systems: the first is Ibuki CL, which
is --- as far as I know --- a preprocessor to C; the second one is called
LispWorks (I've never heard of this but I would be interested if anyone else

In a magazine I found an article comparing Lucid, Allegro and Ibuki. The final
ranking was: Allegro first, followed by Lucid, and then Ibuki. If you are
interested in the details, the article is the following:
A Look at LISP Compilers
by Nader Kameli
UNIX Review, June 1989

In the following, I append the answers I got.
My final impression is:
Allegro seems to be the prefered product,
but the description of the LispWorks system sounds interesting.

Thanks again for all of the replies

Carsten Schroeder

P.S. One of the replies, which came from Harold Boley at the DFKI, got lost
somewhere in my mailbox. Could you please send it again, Harold?

| Universitaet Hamburg
| Fachbereich Informatik
phone: +49 40 4123 6131 | Bodenstedtstrasse 16
FAX: +49 40 4123 6530 | D-2000 Hamburg 50 | Fed. Rep. Germany

From: Kevin Thompson <S=kthompso;OU=ptolemy;OU=arc;O=nasa;P=gov;A=dbp;C=de>
Subject: Allegro Common Lisp.

Date: Wed, 8 Nov 89 12:30:16 PST

We've been on a Sun 3 until recently, but most of what I know applies to Sun

We've chosen Allegro over Lucid, for the following reasons:

-- Allegro Composer is/was integrated with X11, while SPE (Lucid) was
integrated with SunView. Now, this might matter less in the future,
when XView comes out, so maybe SPE will soon work in X as well.

-- Composer works within GNU emacs, SPE has its own editor. This has
advantages and disadvantages. GNU is (as you know I'm sure) very
mature, we were loath to give it up. Of course, the SPE editor has
the advantage of being in the same name space as the listener, with
lots of advantages there. I really don't have a good feel for how
good the SPE editor is.

-- Speed: on some of our programs, Lucid has been far faster, but on my
system, lucid and franz are pretty similar, so I'm not sure if this is
an issue.

-- Support: I'm in a very different situation here, since I work 5
minutes from Sun and 20 minutes from Franz Inc. However, I think
support is a big plus for Franz; they're a 30 (?) person company, I've
been able to speak directly, for instance, to the head of the
development group for composer about something I want.

In general, SPE might be a bit more mature at present, but I think for the
long run Composer and Franz Inc have advantages. I should say, however,
that on a Sun3 Composer is slow enough that I don't find it that useful.
However, I believe this to be true also for SPE.

Good luck. If you get other substantitive comments, your forwarding them to
me would be appreciated, we're still able to change our mind in future

Kevin Thompson NASA-Ames Research Center, USA


From: "Zany Cornetto" <S=chris;P=harlqn;A=co;C=uk>
Cc: <S=lispworks-request;P=harlqn;A=co;C=uk>
In-Reply-To: sch...@fbihh.UUCP's message of 3 Nov 8
Subject: Sun Common Lisp vs. Allegro Common Lisp

I am not able to help you with your comparison of Allegro and Lucid
you might be interested in knowing about LispWorks which is
Harlequin's Common Lisp implementation and programming environment.

Concerning your questions:

LispWorks offers a programming environment that is far superior to
either Allegro Composer or SPE.

Our performance is comparable.

We support calls from lisp to c/fortran and from c/fortran to lisp.

The intepreter and compiler should be identical.

LispWorks includes an CLUE based user interface toolkit. It runs on

It is unrealistic to expect any complex software product to be
completely bug free, but being a European company we can offer much
better support than distant US based companies.

I have appended a description of the product.
If you have any more questions please do not hesitate to contact
either myself or lispworks-request.

chris richardson
----------------, ..!uunet!mcvax!!chris
Harlequin Ltd, Barrington Hall, Barrington, Cambridge, CB2 5RG, England.
Phone: 0223 872522 (National), +44-223-872522 (International).


The Product

LispWorks is Harlequin's software package for developing and delivering
industrial-strength applications written in Common Lisp. The system runs on a
wide range of standard hardware platforms, offers comprehensive symbolic
processing facilities, and provides general purpose workstations with the power
and flexibility of dedicated Lisp platforms.

LispWorks is a single, coherent package, integrating the emerging ANSI standard
Common Lisp (CL) with an object-oriented programming environment based on the
Common Lisp Object System (CLOS), lightweight processes, X-Windows and
monochrome and colour graphics.

The Approach

By designing the programming environment before the underlying language system,
Harlequin has engineered an unrivalled degree of internal cohesion into the
product. Programming tools are firmly embedded in the environment and both are
supported by sophisticated facilities for compilation and interpretation,
together with unobtrusive ephemeral garbage collection. The whole package is
written in Lisp to enhance consistency, maintainability and extensibility.

Fundamental Components

LispWorks includes Harlequin's own implementation of Common Lisp (CL) , CLOS
and the CL Condition System. CLOS provides the object-oriented facilities
employed throughout the package. The Condition System provides comprehensive
error handling facilities during program execution. The enhanced Loop Facility
is also included to provide flexible iteration.

Programming Environment

The LispWorks programming environment is based on CLOS and a notion of
'collections' which supports both residential and file-based activity. A
collection is a uniform, organisational concept: it takes the form of a CLOS
object representing a group of functions, classes, methods, files or any other
group of first class items.

When a collection has been assembled, LispWorks automatically selects and
offers the appropriate generic operations. For example, given a collection of
functions, a variety of operations are offered including tracing, editing and
displaying a call tree; given a collection of classes, the relevant operations
include editing and displaying the class hierarchy.

The LispWorks Source Code Manager (SCM) employs systems, plans and a definition
database to provide extensive support facilities. The SCM assumes
responsibility for source file management, ensuring consistency between files
by employing explicit descriptions of the application systems under
development. It also constructs and presents plans of how chosen operations -
such as compilation - may be performed and maintains a database linking each
top level definition with its position in the corresponding source file. Other
tools, such as the editor, exploit these automatic links.


Programming tools include an Emacs style Lisp Editor, Lisp Listeners and
Workspaces, Describers, Inspectors, Browsers, Steppers, Tracers, Advisers,
Cross Referencers and Debuggers. Full source level debugging is available for
both compiled and interpreted code and there is a hypertext facility supporting
on-line documentation.

User Interface

LispWorks contains an optimised version of CLX the standard CL interface to
X-Windows. Harlequin has also implemented a multi-threaded version of CLUE the
standard CL User Environment. CLX and CLUE provide a basis for constructing
any desired style of user interface. However, Harlequin offers much more.

The LispWorks Interface Toolkit extends CLUE to provide a wide range of generic
interface components - 'contact classes'. To create interfaces using this
toolkit, software developers select the required components; these are combined
using the class inheritance mechanism, to yield customised contact classes.
The standard user interface for LispWorks was itself constructed in this

The LispWorks Application Framework may be used to structure user interaction.
This framework is a generic interaction model for applications. Software
developers can employ the model to add user interaction to a core application
with a minimum of programming effort. The framework increases productivity and
establishes a more coherent style of interaction across applications.

External Interfaces

LispWorks supports transparent access to external code, data, databases,
networks and devices. Interfaces are included to foreign functions/data, SQL
databases, the GNU Emacs editor and plain terminals. Foreign language support
includes C and FORTRAN. Dependence on host operating systems is minimal.


A variety of tools is provided for turning initial implementations into
efficient and compact delivery systems. They are all supported by the
underlying design of LispWorks and include a Profiler, Block Compilation and a
Run-Time Delivery System. Moreover, the LispWorks compiler may be tuned by
software developers to perform application specific optimisations. The
Delivery System is a low-cost version of LispWorks which contains sufficient
support to run standard applications.


Harlequin is committed to an extensive programme of development for LispWorks
which will maintain the product's position on the leading-edge of Lisp
technology. Enhancements include a powerful Distillation Facility which
enables the software developer to remove extraneous code, garbage collection
and other support facilities from an application. Full advantage can thus be
taken of the powerful development environment to produce compact and efficient
delivery systems. The whole LispWorks system has been specially designed for
this purpose.

Another development for LispWorks is a PostScript model with active windowing,
applying Harlequin's expertise with the company's ScriptWorks product. Further
enhancements include object level database interfaces and a persistent object
store, support for functional and logic programming, facilities for parallel,
distributed and 'real-time' processing, a choice of 'look and feel', and
multi-media support.

Further Information

For more information about LispWorks, any of the related products, pricing or
availability please contact:

LispWorks Support
Harlequin Limited
Barrington Hall
Cambridge CB2 5RG

Tel. : +44-223-872522
Fax. : +44-223-872519
Telex : 818440 harlqn g
Email :
or mcvax!ukc!harlqn!lispworks-request


LispWorks and ScriptWorks are trademarks of Harlequin Limited. The Common Lisp
- X interface (CLX) and the Common Lisp User Environment (CLUE) are copyright
Texas Instruments Incorporated 1987,1988. The X Window System is a trademark of
the Massachusetts Institute of Technology. PostScript is a registered trademark
of Adobe Systems Incorporated. Other brand or product names are trademarks or
registered trademarks of their respective holders. Harlequin reserves the right
to alter the specification of LispWorks without notice.

Copyright Harlequin 1989


From:David Fleet <S=fleet;OU=ai;O=toronto;P=edu;A=dbp;C=de>

Date: Sat, 11 Nov 89 21:54:21 EST

hi guy.
I am not realy the guy to ask about lisp on the suns.
I believe we have allegro (cl). The reason for getting it
was 1) it is cheap compared e.g. to lucid. 2) also it is
becoming the most common version so that much of the current
software is written in allegro. Heeger's image processing package
was written for lucid, but guiys here have it running under
allegro. that's it really.

the person most familiar with the issues would be evangelos milios.
his login is eem.etc. I don't know if you know him though.
anyway that's my little bit of info for you.

later, david.


From: <S=bur;O=b21;P=uucp;A=dbp;C=de>
Cc: <S=bur;O=b21;P=uucp;A=dbp;C=de>
Subject: Re. Sun Common Lisp vs. Allegro Common Lisp

Hallo in Hamburg,

wir hier in Berlin verwenden seit ca. 4 Wochen Allegro CommonLisp
(Version 3.1) auf einer Sun 4/110. Generell sind wir ganz zufrieden
damit. Mit SPE und Sun CommonLisp haben wir leider keine Vergleichs-

Vorher haben wir mit Delphi CommonLisp gearbeitet (kommt aus Italien,
hat CLX und erste CLOS-Implementation). Damit konnte man aber nicht gut
arbeiten, daher faellt der Vergleich evt. zu gut fuer Allegro aus.

Nun zu den einzelnen Punkten.

-- usability and comfort of the environment, esp. the debugger

Stepper, Tracer, Inspector und Debugger machen einen guten Eindruck,
insbesondere der Debugger gibt recht gute Aufschluesse. Besonders gut ist die
Lisp-Emacs Schnittstelle, die von Franz erweitert wurde und viele
Moeglichkeiten bietet, die man so von Symbolics kennt. Au~erdem gibt es
dann ja noch den AllegroComposer (Zusatzpaket) der eine
fensterorientierte Oberflaeche zum Debugger und Inspector bietet. Das
sieht auch alles ganz nett aus, aber die Performanz geht selbst bei der
Sun 4 in die Knie.

-- performance

Die Ladezeiten sind ziemlich lang, besonders beim Starten. Ansonsten
kann man nicht meckern.

-- interface to C and UNIX, esp. possibility to call C routines from LISP,
and vice versa

Es ist wohl moeglich, und es gibt spezielle Schnittstellen fuer beide
Richtungen (C - Lisp). Damit haben wir aber keine Erfahrungen.

-- interface to suntools, esp. SunView, and OpenWindows (X)

Es gibt eine eigene Fenster-Software (CommonWindows, auch Zusatzpaket),
die mit SunView und X11R3 zusammenpasst. Wir arbeiten hier mit CLX
(public domain Version wird mit AllegroCL mitgeliefert).

-- does the compiler conform to the same semantics as the interpreter?

Wir haben noch nichts gegenteiliges feststellen koennen.

-- bugs


Hoffentlich konnten wir ein wenig helfen.

Wir waeren sehr dankbar, wenn wir die Ergebnisse der Anfrage ans Netz
erfahren duerften, da wir ja auch erst anfangen.
Falls das AllegroCL bei Euch zum Einsatz kommt, kann man ja vielleicht auch
zwecks Erfahrungsaustausch in Kontakt bleiben.

Bis dann, Tschuess

Birgit Burmeister

Birgit Burmeister
Daimler-Benz AG
Hollaenderstr. 31-34
D-1000 Berlin 51
Email: b...@b21.uucp


From: <S=bob%ibuki;OU=relay;O=EU;P=net;A=dbp;C=de>
Subject: IBUKI Common Lisp

>Posted-Date: Wed, 15 Nov 89 15:24:53 PST


Since you are asking for information on Common Lisp implementations I thought
you might like to know about IBUKI Common Lisp. Below is a brief product
description. I will send you more complete information by mail. In the
meantime, please let me know if I can answer any further questions.

IBUKI Common Lisp (IBCL) runs on nearly 40 different platforms and
environments. IBCL is a full implementation of Common Lisp containing all
of the Common Lisp functions, macros, and special forms specified in the
book "Common Lisp: The Language" by Guy Steele Jr.

IBCL has a compiler and interpreter, a debugger, tracing functions, an error
handling system, an interface to X-windows, and a standardized interface to
emacs-like editors. CLX is supported as is CLOS.

IBUKI Common Lisp is ideal for use in an educational institution. It will
run on small (4mb) workstation configurations, provides identical behavior
across all of the supported environments, and has extensive on line
documentation. IBUKI offers a department site license for $2500 which
provides for the use of IBCL on all machines owned by the department on
which IBCL runs. Both source and object distribution are available under
this program, which may be extended to cover the entire campus. Software
support and new releases are available at nominal charges.

More than 1/6th of the computer science departments in North American
schools as well as numerous European and Asian schools have now taken
advantage of IBUKI's educational program. There is thus a growing
international community of universities that use IBUKI Common Lisp as a
tool for teaching and research.

Contact information follows:

Bob Brandt

IBUKI PH: (415) 961-4996
1447 North Shoreline Blvd. FAX: (415) 961-8016
Mountain View, CA 94043 email: ibuki!


Date: Mon, 6 Nov 89 09:13:22 PST
From: (Bill Carlson)
Subject: Allegro CL


I saw your mail on the net. Although I am somewhat biased in my opinion
of Allegro CL, I'd like to respond to your inquiry directly.

Our X-based environment, Allegro CL with Common Windows and Composer, is
compact (will run inside of 16MB on SPARC) and offers many
easy-to-use facilities. The following is your mail with my
comments inserted.

-- usability and comfort of the environment, esp. the debugger

Our philosophy is to NOT re-invent the wheel, but to take
to advantage of and integrate commonly used tools
like GNU-Emacs, X-windows many features of Berkeley Unix.
We've include things like meta-dot, on-line documentation,
"history", "bang-bang" etc... within the Lisp top level
and more.

On a feature by feature comparison, the tty debugger is
comparable to Sun CL's debugger. In Composer,
the windowized debugger is powerful and informative. Like other
facilities, the debugger pops up in its own customizable
window for ease of use and to clearly display debugging

-- performance

Allegro CL's compiler was rewritten for SPARC and compiles
extremely fast. Allegro CL produces extremely safe and
accurate code while running at ALL settings.
Execution speed is about the same as Sun CL except on
smaller machines where Allegro CL is much
faster due to Sun CL's paging. This is especially true
on SPARCstations with slow disks.

-- interface to C and UNIX, esp. possibility to call C routines from LISP,
and vice versa

With Allegro CL you can have Lisp call C, or C call Lisp. This feature
is well documented, well tested and very easy to use.

-- interface to suntools, esp. SunView, and OpenWindows (X)

For compatibilty reasons, we are putting our energies into X
rather than proprietary window systems.
We interface to X via CLX and have had an X-based
product longer than any Lisp vendor.
We do have an interface to Sunview where we allow you to
call every SunView function directly from Lisp.

-- does the compiler conform to the same semantics as the interpreter?


-- bugs

Our product is well tested and well debugged.
This brings up support, perhaps one of the best reasons to purchase
Allegro CL. Franz Inc. has a reputation for having the best support
in the industry. Our policy is to respond to any inquiry within the
day. You may contact us by phone, Email, Fax, Telex or mail and in
many cases talk directly with the core technical people who wrote the
code. Maintenance is included free for one year with all licenses.

Price is perhaps the last reason to buy Allegro CL,
but it is fair to point out that we offer generous
academic discounts and site licenses. The following
prices are for Sun 4/Sparcstations:

Product Standalone Diskless Site
Allegro CL $1,875. $937.50 $15,625
Common Windows 312.50 156.25 3,125
Composer 625. 312.50 6,250
Our price list will offer more information on additional discounts
and machine availability.

I am sending you more information by airmail.
Please do not hesitate to contact me anytime if you have any
questions or concerns.


Bill Carlson Franz Inc.
Sales Manager 1995 University Avenue, Suite 275
INTERNET: Berkeley, CA 94704
UUCP: uunet!franz!carlson 415-548-3600, FAX:415-548-8253


From: metal%ztivax@unido (Dr Gregor Thurmair)
Date: Mon, 6 Nov 89 08:48:00 -0100
Subject: Allegro vs. Lucid


ich weiss ein bisschen was ueber dieses Thema:

- performance: allegro ist angeblich schneller und etwas kleiner. ich
glaube, dass das anwendungsabhaengig ist, man sollte es auf jeden fall
mit seiner anwendung ausprobieren. zu dem zweck kriegt man auch von
allegro (das wqird ueber die expertise in berlin vertrieben) eine
evaluation copy. alle beide sind auf der sun-4 wohl sehr schnell,
solang man nicht pagen muss.

- das C-Interface ist bei beiden ziemlich aehnlich, beide aktiv und passiv.

- Allegro hat CommonWindows, das laeuft unter NeWS und unter X. Lucid
hat auch ein windowsystem, das laeuft unter Sunview, ich weiss nicht
ob es unter X laeuft. Und von OpenWindows hab ich noch gar nix gehoert.
Was soll denn das sein?

- bugs: haben sie wohl beide, aber wir konnten eine 40K LOC applikation
mit vertretbarem aufwand auf beiden rekompilieren - anpassungen sind
notwendig, aber beide produkte sind ziemlich stabil.

Wenn Ihr sonst noch irgendwas interessantes rausfindet, wuerdet Ihr
bitte mich auch informieen.

Oliver Gajek
uucp: mcvax!unido!ztivax!metal
Phone: 49/89/636-41493
Fax: 49/89/636-47140
Mail: DI AP 323
Siemens AG
Otto-Hahn-Ring 6
D-8000 Munich 83
West Germany


Reply all
Reply to author
0 new messages