aboutsummaryrefslogtreecommitdiff
path: root/src/algebra
diff options
context:
space:
mode:
Diffstat (limited to 'src/algebra')
-rw-r--r--src/algebra/Makefile.in6
-rw-r--r--src/algebra/Makefile.pamphlet6
-rw-r--r--src/algebra/domain.spad.pamphlet (renamed from src/algebra/domain.spad)102
-rw-r--r--src/algebra/variable.spad.pamphlet23
4 files changed, 94 insertions, 43 deletions
diff --git a/src/algebra/Makefile.in b/src/algebra/Makefile.in
index 8bd466fb..a4dafd1f 100644
--- a/src/algebra/Makefile.in
+++ b/src/algebra/Makefile.in
@@ -378,7 +378,7 @@ axiom_algebra_layer_0 = \
OM.o OMCONN.o OMDEV.o OUT.o \
PRIMCAT.o PRINT.o PTRANFN.o SPFCAT.o \
TYPE.o UTYPE.o PROPLOG.o PROPERTY.o \
- BASTYPE.o BASTYPE-.o
+ BASTYPE.o BASTYPE-.o CATEGORY.o
axiom_algebra_layer_0_nrlibs = \
$(axiom_algebra_layer_0:.$(OBJEXT)=.NRLIB/code.$(OBJEXT))
@@ -910,10 +910,6 @@ PARSER.NRLIB/code.$(FASLEXT): script-parser.spad
@ rm -rf PARSER.NRLIB
echo ")co $(srcdir)/script-parser.spad" | ${INTERPSYS}
-DOMAIN.NRLIB/code.$(FASLEXT): domain.spad
- @ rm -rf DOMAIN.NRLIB
- echo ")co $(srcdir)/domain.spad" | ${INTERPSYS}
-
${INPUT}/TESTFR.input: $(srcdir)/fr.spad.pamphlet
diff --git a/src/algebra/Makefile.pamphlet b/src/algebra/Makefile.pamphlet
index 829c6dd3..6845c125 100644
--- a/src/algebra/Makefile.pamphlet
+++ b/src/algebra/Makefile.pamphlet
@@ -206,7 +206,7 @@ axiom_algebra_layer_0 = \
OM.o OMCONN.o OMDEV.o OUT.o \
PRIMCAT.o PRINT.o PTRANFN.o SPFCAT.o \
TYPE.o UTYPE.o PROPLOG.o PROPERTY.o \
- BASTYPE.o BASTYPE-.o
+ BASTYPE.o BASTYPE-.o CATEGORY.o
axiom_algebra_layer_0_nrlibs = \
$(axiom_algebra_layer_0:.$(OBJEXT)=.NRLIB/code.$(OBJEXT))
@@ -1863,10 +1863,6 @@ PARSER.NRLIB/code.$(FASLEXT): script-parser.spad
@ rm -rf PARSER.NRLIB
echo ")co $(srcdir)/script-parser.spad" | ${INTERPSYS}
-DOMAIN.NRLIB/code.$(FASLEXT): domain.spad
- @ rm -rf DOMAIN.NRLIB
- echo ")co $(srcdir)/domain.spad" | ${INTERPSYS}
-
@
<<diagrams.tex (OUT from IN)>>=
diff --git a/src/algebra/domain.spad b/src/algebra/domain.spad.pamphlet
index 64247670..571c14a8 100644
--- a/src/algebra/domain.spad
+++ b/src/algebra/domain.spad.pamphlet
@@ -1,35 +1,35 @@
---Copyright (C) 2007, Gabriel Dos Reis.
---All rights reserved.
---
---Redistribution and use in source and binary forms, with or without
---modification, are permitted provided that the following conditions are
---met:
---
--- - Redistributions of source code must retain the above copyright
--- notice, this list of conditions and the following disclaimer.
---
--- - Redistributions in binary form must reproduce the above copyright
--- notice, this list of conditions and the following disclaimer in
--- the documentation and/or other materials provided with the
--- distribution.
---
--- - Neither the name of The Numerical Algorithms Group Ltd. nor the
--- names of its contributors may be used to endorse or promote products
--- derived from this software without specific prior written permission.
---
---THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
---IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
---TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
---PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
---OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
---EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
---PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
---PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
---LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
---NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
---SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+\documentclass{article}
+\usepackage{axiom}
+
+\author{Gabriel Dos~Reis}
+
+\begin{document}
+
+\begin{abstract}
+\end{abstract}
+
+\tableofcontents
+\eject
+
+\section{domain Category}
+<<domain CATEGORY Category>>=
+)abbrev domain CATEGORY Category
+++ Author: Gabriel Dos Reis
+++ Date Create: February 16, 2008.
+++ Date Last Updated: February 16, 2008.
+++ Basic Operations: coerce
+++ Related Constructors:
+++ Also See: Type
+Category(): Public == Private where
+ Public ==> CoercibleTo OutputForm
+ Private ==> add
+ coerce x ==
+ outputDomainConstructor(x)$Lisp
+@
+\section{domain Domain}
+<<domain DOMAIN Domain>>=
)abbrev domain DOMAIN Domain
++ Author: Gabriel Dos Reis
++ Date Create: October 18, 2007.
@@ -64,4 +64,46 @@ Domain(): Public == Private where
showSummary x ==
showSummary(x)$Lisp
+@
+
+
+\section{License}
+<<license>>=
+--Copyright (C) 2007-2008, Gabriel Dos Reis.
+--All rights reserved.
+--
+--Redistribution and use in source and binary forms, with or without
+--modification, are permitted provided that the following conditions are
+--met:
+--
+-- - Redistributions of source code must retain the above copyright
+-- notice, this list of conditions and the following disclaimer.
+--
+-- - Redistributions in binary form must reproduce the above copyright
+-- notice, this list of conditions and the following disclaimer in
+-- the documentation and/or other materials provided with the
+-- distribution.
+--
+-- - Neither the name of The Numerical Algorithms Group Ltd. nor the
+-- names of its contributors may be used to endorse or promote products
+-- derived from this software without specific prior written permission.
+--
+--THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+--IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+--TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+--PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
+--OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+--EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+--PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+--PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+--LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+--NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+--SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+@
+
+<<*>>=
+<<license>>
+<<domain CATEGORY Category>>
+<<domain DOMAIN Domain>>
+@
diff --git a/src/algebra/variable.spad.pamphlet b/src/algebra/variable.spad.pamphlet
index 0f50171d..54972970 100644
--- a/src/algebra/variable.spad.pamphlet
+++ b/src/algebra/variable.spad.pamphlet
@@ -93,13 +93,30 @@ FunctionCalled(f:Symbol): SetCategory with
)abbrev domain ANON AnonymousFunction
++ Description:
++ This domain implements anonymous functions
-AnonymousFunction():SetCategory == add
- coerce(x:%):OutputForm == x pretend OutputForm
+AnonymousFunction():SetCategory with
+ parameters: % -> List Symbol
+ ++ parameters(f) returns the list of parameters bound by `f'.
+ body: % -> Syntax
+ ++ body(f) returns the body of the unnamed function `f'.
+ == add
+ import Syntax
+ coerce(x:%):OutputForm ==
+ x pretend OutputForm
+
+ parameters f ==
+ ps := CADR(f)$Lisp : Syntax
+ ps case Symbol => [ps]$List(Symbol)
+ getOperands(ps) pretend List(Symbol)
+
+ body f ==
+ CADDR(f)$Lisp : Syntax
@
\section{License}
<<license>>=
---Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd.
+--Copyright (C) 1991-2002, The Numerical Algorithms Group Ltd.
+--All rights reserved.
+--Copyright (C) 2007-2008, Gabriel Dos Reis.
--All rights reserved.
--
--Redistribution and use in source and binary forms, with or without