why GCL, what about Allegro



Hi,

I think that I would be a bit bothered by a move to a non-libre lisp. 
I'd worry that Franz might at some time have a change of corporate heart 
which would leave us out in the cold, and I'd worry that I wouldn't be 
able to freely redistribute a complete, usable Maxima.  On the other 
hand, I won't be able to do any of the extra work that NOT using Allegro 
might burden the maintainers with, so I really can't fuss about it.

If we build anything significant on the whiz-bang features which Allegro 
has and which gcl and clisp  presumably don't, then it might be a very 
painful thing to try to move back if Franz decided that helping out was 
bad for their shareholders.  I completely agree with Prof. Fateman that 
we do not want to see Franz come to any harm, and we certainly couldn't 
fuss if they found that they must pull the plug some time down the road.

Here's a counter-suggestion:  Would it make sense to invite the Franz 
folks to contribute a few bits and pieces of Allegro, under the GPL, to 
gcl ( or clisp) and thus make it possible to run Maxima nicely on both? 
   In return we could promise active cooperation toward getting and 
keeping Maxima running on their lisp and ours.  This would mean having 
our lisp and theirs converge, in the areas which matter to Maxima; I 
suspect there would have to be a pretty significant subset in common. 
This would probably also entail getting away from non-ANSI, gcl 
dependent code in Maxima.

  My idea is that we would be getting a kick-start toward having a GPL'd 
ANSI CL and some nicely integrated graphics, and they would be getting a 
really nice computer algebra system that they could use as a selling 
point for Allegro.  Of course, this depends on our (probably with help 
from Franz) being able to identify a set of things which Franz could 
share without harm to their business, but which would make a real 
difference to us.

The advantage to this would be that the potential user base would expand 
to all the Windows, Mac, etc folks who have Allegro.  The disadvantage 
is that we'll still have to do a lot of work on a lisp.  I'm afraid that 
I'm using ``we'' to mean ``you guys'', since I don't yet  have the time 
or the lisp ability to help out beyond offering free advice.

I hope this helps,
Nels

Message: 14
Date: Wed, 12 Dec 2001 16:18:20 -0800
From: Richard Fateman <fateman at cs>
Organization: computer science division,   UC Berkeley
To: maxima@www.ma.utexas.edu
Subject: why GCL,  what about Allegro


...snip...

I have explored with Franz Inc the possibility of
their providing a base of Allegro CL for Maxima
development.

Advantage:  supported ANSI CL on Windows, Mac OS-X, many
different UNIX and linux systems, many extras like
graphics, web support, etc.  (see franz.com).

Disadvantage:  it does not come with source code.
Disadvantage:  there will be presumably SOME restriction
on this so that they are not giving away their main
source of revenue free.  Yet this may not be much of
a restriction since Franz already gives away a rather complete
lisp free (minus some compiler features and maybe a
maximum memory limit, plus.. one must re-register periodically...).
The free "student" version does not
include (I think) the full compiler (just compiles in-core,
not producing files), and I think does not support
new foreign function linkages.  I think that both
these restrictions would have to be lifted to be
viable.

My guess is that it will be something like

the free lisp + enough extra resources to include all
of maxima code + enough free space to continue to make it
interesting.

I don't know how people here feel about this.
Possible reactions

1. Yes, let's do it. It makes our lives simpler.
     (We still need to understand what restrictions we
      can live with.)

2. No, only open-source GPL code allowed here.

3. It's just another Lisp, along with GCL etc to support.
Do it if you want to.

4. Something else.


If you are inclined towards reaction 1, we still
need to make our list of "non-negotiable demands".
They must be such that Franz Inc's business is
placed in jeopardy.  If we use this code it is
in our best interests that the company remain profitable.

RJF