[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Axiom-developer] Exports == Implementation
From: |
daly |
Subject: |
[Axiom-developer] Exports == Implementation |
Date: |
Tue, 23 Aug 2005 20:36:27 -0500 |
CY,
This is a convention (not universally followed). The definition of
a domain has a signature, a list of functions it exports and the
implementation of those functions.
Axiom's syntax for a macro is
name ==> definition
so you'll see things like:
foo(R: Ring): Exports == Implementation
Exports ==> ...
Implementation ==> ...
The left and right sides of the '==' are given in macro definitions.
You could have easily said:
foo(R: Ring): Left == Right
Left ==> ...
Right ==> ...
I agree that we need to define the syntax with a real example.
Perhaps if we develop the Dimension package in public we can
use it as an example of developing a domain and a give complete,
step-by-step explanation in the pamphlet. We could include it as
a chapter in the Programmer's Guide in the axiom--book--1 tree.
I wrote a similar chapter for Aldor years ago. I'm not sure if
it is still part of the aldor docs.
t