[Top][All Lists]

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

RE: [Axiom-developer] Documentation bug?

From: Page, Bill
Subject: RE: [Axiom-developer] Documentation bug?
Date: Wed, 15 Feb 2006 05:48:16 -0500


On Wednesday, February 15, 2006 5:20 AM you wrote:
> Maybe I should have been a bit more precise. I actually
> already knew what )abbrev is for. I just forgot the syntax.

No problem.

> As you see the first message tells me:
>    Issue )abbrev? for more information.
> And if I do that I get a not so helpful message. That was the 
> bug I was referring to.

I agree. I think is would be good to record such deficiencies
as issue reports in the IssueTracker on the Axiom wiki.

> Anyway, is there somebody who thinks that the abbreviation is 
> vital to Axiom? (Well it is, because the generated NRLIB will
> be created under that name.)

Yes I do think they are essential to the way Axiom works at
the present time. See more below.

> However, I somehow think that is a constraint of old where 
> filenames could not be arbitrary long. Further, one then has
> 2 identifiers in Axiom that refer to the same thing.

I agree that the limitation on the length of the abbreviation
itself was constrained by the old file names. But there are
many cases where standard short name is quite convenient -
especially for use by expert users in the Axiom interpreter.
For example I often write: 'POLY INT' instead of
'Polynomial Integer' (and I am sure I could think of more
extreme cases where the abbreviations are useful).

> I believe such abbreviations could be achieved on a per
> user basis. Simply put appropriate macro definitions in
> your .axiom.input file.

Although this might be convenient for local and personal
use, I worry that it might confuse or slow communications
between more experienced users. For example if you defined
the macros

  P ==> Polynomial
  I ==> Integer

insist on writing 'P I' I would probably be confused until
you explained your conventions.

> Aldor does not understand ")abbrev" anyway.

Well, I think the situation of using Aldor in Axiom is a
little different than using Aldor stand alone. When a domain
is compiled using Aldor inside Axiom the domain will still
have an abbreviation. You can see this by issuing the ')show'
command for the new domain. For example:

In this case the abbreviation 'FINITEG' was assigned internally,
probably by the Axiom/Aldor interface.

Besides being a shortcut, one reason that Axiom needs abbreviations
is in order to construct the internal (lisp) mangled name of the
functions exported by the domain. See for example the lisp code
in the following example:

I think this name mangling is essential to the way Axiom performs
function selection and calling.

Bill Page.

reply via email to

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