[Top][All Lists]

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

RE: [Axiom-developer] Knuth's literate style

From: C Y
Subject: RE: [Axiom-developer] Knuth's literate style
Date: Mon, 14 May 2007 20:51:11 -0700 (PDT)

--- Bill Page <address@hidden> wrote:

> On May 14, 2007 6:36 PM C Y wrote:
> > ... 
> > I rather doubt there will be agreement on the best language to
> > write CASs in, ever.  My hope is that at some point most writing
> > for computer algebra systems will take place in languages designed
> > to be close to the mathematics (SPAD/Aldor) and have a solid
> > framework which only needs a little tweaking now and then.
> Although I am irrevocably committed to promoting Axiom and Aldor
> as the appropriate tools for computer algebra, I found Ondrej
> Certik remarks on this list concerning his reasons for choosing
> Python for SymPy rather compelling. The reasoning is simple: 1)
> Python is familiar to millions of current generation programmers,
> 2) Python is adequate (while admittedly not perfect) for developing
> a computer algebra system, 3) To move any open source project
> forward it is necessary to attract the interest of a significant
> number of potential contributors, 4) There is a considerable
> resistance on the part of most people to learn a new programming
> language just in order to participate in a volunteer effort.
> Therefore SymPy (and Sage).

Rather than get into the dangerous ground of trying to compare Sage to
other systems, I merely remark that Sage by virtue of its incorporation
of a large number of diverse components can be said to be using a large
number of programming languages.  Python happens to be the "glue" but
their core functionality is scattered over a wide range of programs.

> Perhaps Voltaire said it better: "Le mieux est l'ennemi du bien."
> (The best is the enemy of the good.)

Arguably.  But sometimes only the best will do ;-).

> In other words: trying too hard can get you no where. I think
> that to some extent both Axiom and Lisp suffer from this sort
> of syndrome. But I do not know what if anything should be done
> about it.

I would say the existence of Sage and Maxima relieves us of some roles
we might otherwise be pressured to fill.  For most immediate uses, Sage
and Maxima are focused on  "getting the job done".  (Whatever that
phrase means.)  That has obvious practical benefits and there is a need
for such systems.  Because that need is being filled, Axiom can go
after the comparatively new territory of "getting the job done Right." 
As Tim likes to observe, when that becomes the goal there is no such
thing as a simple job.  That's why I don't expect any major commercial
system to ever pursue such a goal - the marginal gains from "almost
always correct" to "breaking new ground in correctness assurance"
aren't really all that high.  Mathematica isn't correct 100% of the
time, but it cannot be denied it is close enough for major commercial
success.  However, I personally think pursuit of the goal of "computer
algebra done Right" is a benefit to mathematics and science (or will be
once it does finally start achieving results.)  Again, that's one
person's opinion.

> > ...
> > Bill Page wrote:
> > > 
> > > You might be surprised how many people I work with who want so
> > > badly to write their scientific and technical documents in
> > > Microsoft WORD. I would say that the number of authors who are
> > > LaTeX users in our environment is currently less than 50% and
> > > it is falling. :-(
> > 
> > Gah.  Why is that, do you think?  My experiences with Word have
> > seldom been positive.  Sheer mass action and familiarity?
> I might be rather biased but I think the main reason is
> institutional. Microsoft offers their customers the usual
> "security blank": you pay us money, we provide you with some
> level of support. There is no equivalent arrangement possible
> concerning LaTeX. In contrast it is possible (but still difficult)
> to promote OpenOffice to corporate instructions just because you
> can pay Sun for exactly the same thing that you get for free in
> OpenOffice. It is this corporate "mindset" that keeps a lot of
> open source software out of the major instutions (outside the
> university environment).

Yes, that's true enough - open source is a very foreign mindset to many
for-profit institutions.

> A secondary issue of course is that LaTeX (at least in part by
> deliberate design) is not normally written in a WYSIWYG style.
> This leads to a steeper learning curve which one might have to
> climb more than once depending on how frequently you author
> publications of this type. I think it is hard to convince most
> people that this effort is "worth it" (although I personally
> believe that it is).

Agreed.  Learning powerful tools almost always pays back the effort
many times over, but the up front investment must be made.  Just like
capital investments by corporations, in fact...

> Finally a third issue is merely a matter of fashion. It is not
> currently fashionable to use "legacy" tools of this kind. Most
> people are looking for something new and sexy and easy... even
> if the result is not necessarily as good as that produced by
> the "pioneers" (like Knuth).

Yes, I've noticed that and I regard it as a sign of immaturity in the
software world.  We should be writing in such a fashion that "legacy"
is no longer a word for old software that doesn't work in new
environments - we have enough hardware power and experience with
abstraction now that there is no excuse for this.  This is actually a
benefit of the sometimes frustrating "set in stone" quality of the ANSI
Common Lisp language specification - it makes for a very stable

TeX proved that it is possible to write software so good people keep
using it for decades.  I think it's probably questionable whether TeX
can really be regarded as "done" (many of its most useful extensions
are actually very important in making it useful today) but it is
probably closer to it than any other software program I am aware of.

> I have serious doubts that we can ever get "there". I can not
> see any real possibility of making the user interface so
> seamless, the programming language so "natural", or of obtaining
> some new  mathematical result using Axiom so astounding that a
> significant number of people will see "MOT learning Axiom" as an
> inconvenience.

If we have a significant fraction of all mathematical research
implemented in a readily accessible fashion that allows rapid
experimentation and development of new algorithms, researchers who
don't use it may find themselves at a disadvantage.  That's the goal
anyway - who knows if it can be achieved?  Only one way to find out -
build the best system we can and keep making it better :-).
> I find that the Sage developers generally have a very good handle
> on how to organize this sort of work. First and foremost I think
> was the original decision to "assimilate" other open source computer
> algebra projects rather than competing directly with them.

For the goals of Sage this works, but I think the aggregation of so
many different systems may prove too fragile for some of the formal
proof dreams some of the Axiom developers harbor :-).

One of the more interesting sessions at ECCAD was the question and
answer session.  I guess none of us have summarized ECCAD yet but one
of the most interesting points for me was when (in response to a
question from Tim, IIRC) at least one of the panel said they saw some
merit in a "collection" of formally proven mathematics being
universally available.  (that's a rough paraphrase.)  I have always
thought this was a good niche for Axiom to fill - take the mathematical
work out there, fit it into the overall picture, write it up, and
implement it.  Then, prove it correct ;-).

> (Yes I do mean assimilate in the Star Trek sense: "Resistance is
> futile". :-) But seriously, I think they have done a number of other
> things right. See for example
> "Submission of Refereed Code to SAGE"
> Tim Daly has suggested (more or less) this sort of approach for
> Axiom. I believe something similar is in place for GAP and that
> was probably the model that Sage is following. If it were somehow
> (someday) possible to establish this sort of peer review
> "publication" process for Axiom, I think it might go a long way
> toward providing a means to "credit" people for their work in a
> way that means something to both the average university supported
> researcher and the dedicated open source hobbyist.

Agreed.  As our foundation gets more stable and well documented this
will become possible, and I think it will be important to the future of
Axiom.  After all, the best way to get new research into the system is
to have people do the research using it and contribute it back ;-).


 snooze, you lose. Get messages ASAP with AutoCheck
in the all-new Yahoo! Mail Beta.

reply via email to

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