diff options
author | dos-reis <gdr@axiomatics.org> | 2008-07-15 02:11:27 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2008-07-15 02:11:27 +0000 |
commit | 24790cf3e1301cb46cbd9b03dbe064722e7b44e8 (patch) | |
tree | 85b72a509e99bfa2f17aaf756f0fc908abff5c2a /src/algebra/syntax.spad.pamphlet | |
parent | 9eb7ed6589dc8a37cdd22bf940efbfaf9ee2fb79 (diff) | |
download | open-axiom-24790cf3e1301cb46cbd9b03dbe064722e7b44e8.tar.gz |
* share/algebra: Update databases.
* algebra/Makefile.pamphlet (axiom_algebra_layer_9): Add SIG.
* algebra/syntax.spad.pamphlet (Signature): New.
Diffstat (limited to 'src/algebra/syntax.spad.pamphlet')
-rw-r--r-- | src/algebra/syntax.spad.pamphlet | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/algebra/syntax.spad.pamphlet b/src/algebra/syntax.spad.pamphlet index 40b2f066..939d040b 100644 --- a/src/algebra/syntax.spad.pamphlet +++ b/src/algebra/syntax.spad.pamphlet @@ -245,6 +245,34 @@ ConstructorCall(): Public == Private where outputDomainConstructor(x)$Lisp @ +\section{The Signature domain} +<<domain SIG Signature>>= +)abbrev domain SIG Signature +++ Author: Gabriel Dos Reis +++ Date Created: January 10, 2008 +++ Date Last Updated: July 14, 2008 +++ Description: This is the datatype for operation signatures as +++ used by the compiler and the interpreter. +++ See also: ConstructorCall, Domain. +Signature(): Public == Private where + Public == SetCategory with + target: % -> ConstructorCall + ++ target(s) returns the target type of the signature `s'. + source: % -> List ConstructorCall + ++ source(s) returns the list of parameter types of `s'. + Private == add + Rep == List ConstructorCall + target x == + first rep x + source x == + rest rep x + x = y == + rep x = rep y + coerce(x: %): OutputForm == + rarrow([s::OutputForm for s in source x]::OutputForm, + target(x)::OutputForm)$OutputForm +@ + \section{domain ElaboratedExpression} <<domain ELABEXPR ElaboratedExpression>>= )abbrev domain ELABEXPR ElaboratedExpression |