Design
In Axiom, all objects have a type. Examples of types are mathematical structures (such as rings, fields, polynomials) as well as data structures from computer science (e.g., lists, trees, hash tables).
A function can take a type as argument, and its return value can also be a type. For example, Fraction
is a function, that takes an IntegralDomain
as argument, and returns the field of fractions of its argument. As another example, the ring of matrices with rational entries would be constructed as SquareMatrix(4, Fraction Integer)
. Of course, when working in this domain, 1
is interpreted as the identity matrix and A^-1
would give the inverse of the matrix A
, if it exists.
Several operations can have the same name, and the types of both the arguments and the result are used to determine which operation is applied (cf. function overloading).
Axiom comes with an extension language called SPAD. All the mathematical knowledge of Axiom is written in this language. The interpreter accepts roughly the same language. SPAD was further developed under the name A# and later Aldor. The latter can still be used as an alternative extension language. It is, however, distributed under a different license.
Read more about this topic: Axiom (computer Algebra System)
Famous quotes containing the word design:
“To nourish children and raise them against odds is in any time, any place, more valuable than to fix bolts in cars or design nuclear weapons.”
—Marilyn French (20th century)
“I begin with a design for a hearse.
For Christs sake not black
nor white eitherand not polished!
Let it be weatheredlike a farm wagon”
—William Carlos Williams (18831963)
“If I commit suicide, it will not be to destroy myself but to put myself back together again. Suicide will be for me only one means of violently reconquering myself, of brutally invading my being, of anticipating the unpredictable approaches of God. By suicide, I reintroduce my design in nature, I shall for the first time give things the shape of my will.”
—Antonin Artaud (18961948)