aboutsummaryrefslogtreecommitdiff
path: root/src/algebra
diff options
context:
space:
mode:
Diffstat (limited to 'src/algebra')
-rw-r--r--src/algebra/Makefile.in3
-rw-r--r--src/algebra/Makefile.pamphlet3
-rw-r--r--src/algebra/data.spad.pamphlet18
3 files changed, 22 insertions, 2 deletions
diff --git a/src/algebra/Makefile.in b/src/algebra/Makefile.in
index 47010830..4d3f88c8 100644
--- a/src/algebra/Makefile.in
+++ b/src/algebra/Makefile.in
@@ -322,6 +322,7 @@ $(OUT)/IOMODE.$(FASLEXT): $(OUT)/SETCAT.$(FASLEXT)
$(OUT)/PRINT.$(FASLEXT): $(OUT)/TYPE.$(FASLEXT)
$(OUT)/RTVALUE.$(FASLEXT): $(OUT)/TYPE.$(FASLEXT)
+$(OUT)/SYSPTR.$(FASLEXT): $(OUT)/SETCAT.$(FASLEXT)
axiom_algebra_layer_0 = \
AHYP ATTREG CFCAT ELTAB KOERCE KONVERT \
@@ -348,7 +349,7 @@ axiom_algebra_layer_0 = \
DIOPS DIOPS- STRING STRICAT ISTRING ILIST \
LIST \
LINEXP PATMAB REAL CHARZ LOGIC LOGIC- \
- RTVALUE
+ RTVALUE SYSPTR
axiom_algebra_layer_0_nrlibs = \
$(addsuffix .NRLIB/code.$(FASLEXT),$(axiom_algebra_layer_0))
diff --git a/src/algebra/Makefile.pamphlet b/src/algebra/Makefile.pamphlet
index d8ee249a..1d75410b 100644
--- a/src/algebra/Makefile.pamphlet
+++ b/src/algebra/Makefile.pamphlet
@@ -276,6 +276,7 @@ $(OUT)/IOMODE.$(FASLEXT): $(OUT)/SETCAT.$(FASLEXT)
$(OUT)/PRINT.$(FASLEXT): $(OUT)/TYPE.$(FASLEXT)
$(OUT)/RTVALUE.$(FASLEXT): $(OUT)/TYPE.$(FASLEXT)
+$(OUT)/SYSPTR.$(FASLEXT): $(OUT)/SETCAT.$(FASLEXT)
axiom_algebra_layer_0 = \
AHYP ATTREG CFCAT ELTAB KOERCE KONVERT \
@@ -302,7 +303,7 @@ axiom_algebra_layer_0 = \
DIOPS DIOPS- STRING STRICAT ISTRING ILIST \
LIST \
LINEXP PATMAB REAL CHARZ LOGIC LOGIC- \
- RTVALUE
+ RTVALUE SYSPTR
axiom_algebra_layer_0_nrlibs = \
$(addsuffix .NRLIB/code.$(FASLEXT),$(axiom_algebra_layer_0))
diff --git a/src/algebra/data.spad.pamphlet b/src/algebra/data.spad.pamphlet
index 95feee21..2d84ac59 100644
--- a/src/algebra/data.spad.pamphlet
+++ b/src/algebra/data.spad.pamphlet
@@ -235,6 +235,22 @@ UInt64() == SystemNonNegativeInteger 64
@
+\section{System-level Pointer Datatype.}
+
+<<domain SYSPTR SystemPointer>>=
+)abbrev domain SYSPTR SystemPointer
+++ Author: Gabriel Dos Reis
+++ Date Created: September 8, 2009
+++ Date Last Modified: September 8, 2009
+++ Description:
+++ This domain is a datatype system-level pointer values.
+SystemPointer(): SetCategory
+ == add
+ x = y == EQL(x,y)$Foreign(Builtin)
+ coerce(x:%): OutputForm ==
+ FORMAT(NIL$Foreign(Builtin),"~A",x)$Foreign(Builtin)
+@
+
\section{The ByteBuffer domain}
@@ -432,6 +448,8 @@ DataArray(N: PositiveInteger, T: SetCategory): Public == Private where
<<domain UINT32 UInt32>>
<<domain UINT64 UInt64>>
+<<domain SYSPTR SystemPointer>>
+
@
\end{document}