axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Axiom-developer] SBCL and Axiom


From: Gregory Vanuxem
Subject: Re: [Axiom-developer] SBCL and Axiom
Date: Mon, 12 Feb 2007 18:27:48 +0100

Le lundi 12 février 2007 à 02:14 -0500, C Y a écrit : 
> Vanuxem Grégory wrote:
> > Hello,
> > 
> > I have uploaded a version of Axiom built on top of SBCL for Windows (32
> > bits).
> 
> Interesting!  Not being a Windows user I can't check this out directly, 
> but it is good news.
> 
> I have a couple of questions concerning how this has been accomplished, 
> although they may be premature:
> 
> 1.  You mentioned Juergen Weiss's CMUCL port - did you alter that code 
> to run on SBCL or use the techniques there as a guide and convert one of 
> the other trees?

I completely based this work on the version of Juergen Weiss. My work
was essentially the one of an ant. I grepped the code for "cmu" added
support of SBCL and Clisp. After that I added some files and modified
bootsys so that it can be compiled on GCL, SBCL, Clisp and (for the fun)
Allegro CL. Finally I tried to fix as much as can bugs.

Juergen Weiss did an amazing work...

Of course there are some GLC'ish things in the boot code, as Gaby said
previously, that needed to be fixed. I must point out that what I have
done will need to be checked by Lisp specialists. The version that I'll
share will not be the one I'm working on. I added to this "shareable"
version a tons of things from the official Axiom such that it'll be easy
to diff it. But I intimately think that we have to reorganise, simplify,
factorise, develop and document the code when we will merge changes. I
already began to reorganise the code, this is a pain to work on, say
stream for example, when the code is disseminated everywhere...

> 
> 2.  Did you change the boot/SPAD compilers to output SBCL compliant lisp 
> code, or hand tweak the lisp code produced by the "regular" compile?

No the code (from spad, bootsys boot and old boot) produced by the version
on which I'm working (presumably the same than the official Axiom))
is compilable and "runnable" by SBCL, CMU [1] and Clisp.

> 
> Back when I took a run at SBCL + Axiom, one of the points that became 
> quickly clear was that short of carrying through with a complete 
> conversion of all boot code to lisp (a long term goal at the moment) or 
> simply living with hand tweaked translator output for a large number of 
> files at least the boot compiler and possibly the spad compiler would 
> need to be adjusted to output ANSI lisp.  I was able to just about load 
> the stand-alone bootstrap boot->lisp system after some tweaking, but I 
> didn't carry much further than that.
> 
> Gaby has proceeded much deeper into the BOOT world than I was ever able 
> to and the presence of old and new BOOT (shoe?) adds a rather unexpected 
> twist.  The prospect of fixing BOTH variations to output correct code is 
> not a particularly enjoyable one.  My hope was that the new BOOT (shoe) 
> was the stand alone code in the boot directory, which I suspect would be 
> somewhat simpler to get working as the first step in getting sbcl to 
> support the complete build chain as it exists today in GCL.

Spad, bootsys boot and old boot can be compiled without problem  :-). It's 
really
simple to add support of SBCL, Clisp, CMU and Allegro (though I'm pretty sure
some bugs remain) to bootsys. 

I forgot to say one thing, I have not "ported" the socket code. I need
first to better understand some parts of Axiom relative to this.

Greg

PS : I have a couple of problems with CMU CL, it can not compile some functions
and I don't know why as of now.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]