[Top][All Lists]

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

RE: [Axiom-developer] RE: cross-compiling Axiom

From: Page, Bill
Subject: RE: [Axiom-developer] RE: cross-compiling Axiom
Date: Tue, 5 Sep 2006 19:44:14 -0400

On Tuesday, September 05, 2006 12:31 PM Gabriel Dos Reis
> | 1) Why should we want Axiom to be cross-compiled?
> Because I believe that making Axiom more accessible is a very
> important issue for Axiom.  You believe that people can just go
> apt-get and voilĂ .

Apparently apt-get works on at least 2 of the 10 major distributions.
And the rpms created via alien from the Debian binaries seem work
on at least Fedora and SuSe but of course you have to satisfy any
dependencies manually.

> I highly suspect your view is right for a very restricted
> class of people.

Debian and Ubuntu seem to be pretty widely used to me. They are both
listed here with the "top 10":

There does not seem to be any easy way to get statistics on the
actual number of installed Linux systems. But I think we have
received reports of successful installation of Axiom on all of
these "major" systems.

During August (which was a pretty typical month) the Linux binaries
for Axiom were downloaded 120 times while the Windows binaries for
Axom where downloaded 521 times (not counting BitTorrent downloads).

> One way of making Axiom accessible is by "convincing" popular
> Linux distros to bundle it with their packages.

1) For how many people would that make Axiom significantly more
   accessible than it is already? Ok, having it on your "extras"
   CD might be convenient but does that really make such a

2) Since Maxima is not currently included any "popular Linux
   distros" and it has been in line much longer than Axiom, what
   chance does Axiom have of being included? As far as I know no
   computer algebra package is included in any "major" Linux
   distribution except Debian.

I really doubt that "accessibility" of Axiom is a problem. We
have Axiom on Knoppix and other Knoppix-based LiveCD's, we have
Axiom on the DoyenCD (Fedora 3), and even have Axiom directly
accessible over the web.

I think simply including the DoyenCD with the Axiom Tutorial
book (which is already available to university book stores
through standard channels like Amazon) would have a bigger
impact than anything we do through the Linux distributions.

> | I think there are many more important issues to address.
> that is your belief.
> I however agree there are other important issues to address.
> At the moment, I don't believe they are more important than
> "getting Axiom to the masses".

I am all for exposing Axiom to a larger number of people, but
adding Axiom to the 10,000 other packages that are included in
the typical Linux distribution doesn't seem like such a great
strategy to me.

3) Do you think Mathematica and Maple have been successful at
   getting their products "to the masses"?

4) Is that the kind of goal that you would like to set for Axiom?

>From my point of view, even though both companies spend quite a
lot on advertising in the academic and scientific communities, they
still seem to have serious problems achieving wider acceptance of
computer algebra as "tool for the masses". It seems to me the
reasons are much deeper than just accessibility.

Yes, that is just my belief but I will try to cite some statistics
to make it seem more plausible. On Axiom
is currently ranked 9964 out of 23688 while Maxima is at 3694.
The popularity graphs show that the number of Axiom installations
appears to be still rising (although not quickly) while Maxima
installations have (more or less) leveled off. Both Axiom and
Maxima are equally accessible to Debian users. So accessibility
does not seem to be a factor in the observed difference.

Of course since participation on Debian popcon is optional,
it is easy to dispute the actual meaning of these numbers.

> [...]
> | I have explained and so had David Mentre and a few other people
> | on this list.
> David's message (from April) got an answer from Benjamin.

About cross-compilation David Mentre wrote:

> ...
> That might be an issue, as Lisp images are generated by executing
> the lisp machine, and machine specific C and object files are
> generated at that time. Maybe Camm could comment on this point,
> as GCL guru. ;-)
> However, Axiom can be compiled on various architecture (tested
> archs are alpha amd64 arm hppa i386 ia64 mips mipsel powerpc
> s390 sparc).
> ...

5) Is this the "answer form Benjamin" to which you refer?

> From:         Benjamin Kosnik
> Subject:      [Axiom-developer] Re: [Axiom-mail] Axiom and linux distros
> Date:         Thu, 20 Apr 2006 11:54:10 -0500
> > Could you detail this point? By "cross-compilation", do you really
> > mean like compiling on architecture i386 for arch ppc64? Why?
> often times ppc64 hardware is unavailable, or slow.
> This is a pretty common requirement.


I don't count that as any sort of credible "answer".

6) In what sense could this be called a "common requirement"? Which
   Linux distributions requre that all packages be cross-compilable?
   What other packages like Axiom are cross-compilable?

> How many other people on this list?  Please be specific.

I think I should let them speak for themselves, if they wish.
> ... 
> No; I've just been amazed how negative you want this stuff to be:
> "it is impossible to do, and you speak of doing it, then you must
> not understand it, and if you do understand it, then it is not
> important".

That is certainly not a direct quote from me. But I do think that
anyone who suggests that cross-compilation of Axiom is desirable
must have some basic misunderstanding of how Axiom is built on
Lisp or (maybe) are using the term "cross-compilation" in some
non-standard way. And I do believe there are better ways of spending
time on Axiom then trying to satisfy artificial requirements that
have such dubious benefits.

> Now, if that is constructive, then I hereby apply for the rank
> of "arm-chair contributor" :-)

I am afraid you no longer qualify. But I still have some hope that
continuing this discussion might help to convince you not to spend
much time on what seems to me is obviously a "fool's errand".

Of course this is just my "arm chair" opinion. I am sorry if the
expression of my opinion annoys you or seems to waste your time.
But this is an open source project, so I am sure that you will
continue with your contributions to Axiom or not, as you see fit.

> [...]
> | When Axiom is built using GCL, GCC becomes an integral part of
> | Axiom. Axiom cannot run without it. GCC is called every time you
> | define a function. So to run Axiom you must provide the GCC
> | environment.
> No, I do not need to provide GCC environment.  I just need to make
> sure that the right GCC is called. GCL does not provide GCC.  It
> just assumes GCC exists.

What you wrote above sounds self-contradictory.

Axiom uses GCL to compile functions and SPAD code. Or more precisely:
since Axiom is a Lisp application, Axiom *includes* GCL as an integral
part of the program. Axiom/GCL compiles function definitions and SPAD
code to C. GCL does require a GCC environment to compile the generated
C code to object code and to link the object code into the Axiom image.

For example on Windows, the necessary parts of the GCC environment
(including the GCC compiler) must be copied from MSYS/MinGW and these
are included in the self-install binary distribution file for Windows.

> | If you have the GCC environment, then GCL and Axiom
> | can be built on the target environment. 2) What is the point of
> | "jumping-through-hoops" to try to arrange that some part of the
> | build can take place on a host environment separate from the
> | target when in the end the target must have the same environment,
> | must be sufficiently powerful to run Axiom and must in any case
> | be involved in the creation of the resulting program?
> but, you know that is not the case.  So, you want me to answer a
> question that is at best a mischaracterization to begin with?


I did not intend to ask a question containing a mischaracterization.
I believe that the presumptions of the question are accurate.

7) Why do you say: "you know that is not the case"? What part of
   what I wrote above do you think is not true?

Bill Page.

reply via email to

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