[Openmcl-devel] CCL/OpenMCL *features*

Gary Byers gb at clozure.com
Fri Jan 4 13:10:02 PST 2008

On Fri, 4 Jan 2008, Rainer Joswig wrote:

> Am 04.01.2008 um 20:11 schrieb Gary Byers:
>> I think that :DARWIN should be on *features* on any version intended
>> to run on Darwin (and likewise the keywords :LINUX and :FREEBSD.) I'll
>> try to ensure that that's true in the next release (and get the
>> changes
>> into CVS/SVN soon.)
> Another *features* issue:
> Clozure CL has :MCL on the feature list. I find that I need to edit
> all kinds
> of files because the #+mcl code does not run in Clozure CL
> (lacks FRED, lacks the GUI, has different pathnames, etc.).
> In those places I have to change #+MCL into
> #+(and mcl (not clozure-common lisp))
> and additionally I then need to add code with
> #+clozure-common-lisp
> Maybe it needs some shorter feature like :cl-cl or :clcl ?
> Would it be :clozure? But that might conflict with code
> that is only running within projects of the company Clozure ?
> Should :mcl really be on the feature list?
> Regards,
> Rainer Joswig

This came up a couple of years ago, and the general consensus was
that having :MCL on OpenMCL's *FEATURES* was confusing and led
to lots of #+(and MCL (not OPENMCL)) gyrations.

I took it out (in one of the early 1.1-prereleases), and started
getting reports of things breaking (including things that had
never worked in commercial MCL and were using #+MCL to conditionalize
for OpenMCL.)  I sheepishly put it back.

Some people have also expressed the opinion that all of the :*-HOST
and :*-TARGET things on *FEATURES* are confusing and add clutter.
The distinction(s) between the host and target system matter when
cross-compiling (and the CCL sources are mostly conditionalized
in ways that are sensitive to those distinctions), but most 
people don't cross-compile other things that often and the
host system is almost always the same as the target, so maybe
some of this could be hidden and only pushed on *FEATURES*
when (cross-)compiling the lisp itself.

More information about the Openmcl-devel mailing list