diff options
Diffstat (limited to 'src/algebra')
-rw-r--r-- | src/algebra/Makefile.am | 3 | ||||
-rw-r--r-- | src/algebra/Makefile.in | 3 | ||||
-rw-r--r-- | src/algebra/aggcat.spad.pamphlet | 20 | ||||
-rw-r--r-- | src/algebra/exposed.lsp.pamphlet | 1 |
4 files changed, 25 insertions, 2 deletions
diff --git a/src/algebra/Makefile.am b/src/algebra/Makefile.am index 0b2a6854..aa544fbd 100644 --- a/src/algebra/Makefile.am +++ b/src/algebra/Makefile.am @@ -1460,6 +1460,7 @@ $(OUT)/SGPOP.$(FASLEXT): $(OUT)/SGPOPC.$(FASLEXT) $(OUT)/SETCAT.$(FASLEXT) \ $(OUT)/MONOPC.$(FASLEXT): $(OUT)/SGPOPC.$(FASLEXT) $(OUT)/FSAGG.$(FASLEXT): $(OUT)/FINAGG.$(FASLEXT) +$(OUT)/SMAGG.$(FASLEXT): $(OUT)/HOAGG.$(FASLEXT) $(OUT)/FINAGG.$(FASLEXT): $(OUT)/HOAGG.$(FASLEXT) oa_algebra_layer_0 = \ @@ -1472,7 +1473,7 @@ oa_algebra_layer_0 = \ RMODULE ALGEBRA ALGEBRA- SGROUP SGROUP- ABELSG \ ABELSG- ORDSET SGPOP OASGP FILECAT SEXCAT \ MODULE MODULE- PID OAGROUP OAGROUP- OCAMON \ - OAMON OAMON- DIOID MONOPC \ + OAMON OAMON- DIOID MONOPC SMAGG \ RNG RNG- ORDFIN LLINSET RLINSET LINSET OAMONS \ MKBCFUNC MKRECORD MKUCFUNC DROPT1 PLOT1 ITFUN2 \ ITFUN3 STREAM1 STREAM2 STREAM3 ANY1 SEGBIND2 \ diff --git a/src/algebra/Makefile.in b/src/algebra/Makefile.in index 94f58422..fe03e9c6 100644 --- a/src/algebra/Makefile.in +++ b/src/algebra/Makefile.in @@ -727,7 +727,7 @@ oa_algebra_layer_0 = \ RMODULE ALGEBRA ALGEBRA- SGROUP SGROUP- ABELSG \ ABELSG- ORDSET SGPOP OASGP FILECAT SEXCAT \ MODULE MODULE- PID OAGROUP OAGROUP- OCAMON \ - OAMON OAMON- DIOID MONOPC \ + OAMON OAMON- DIOID MONOPC SMAGG \ RNG RNG- ORDFIN LLINSET RLINSET LINSET OAMONS \ MKBCFUNC MKRECORD MKUCFUNC DROPT1 PLOT1 ITFUN2 \ ITFUN3 STREAM1 STREAM2 STREAM3 ANY1 SEGBIND2 \ @@ -2800,6 +2800,7 @@ $(OUT)/SGPOP.$(FASLEXT): $(OUT)/SGPOPC.$(FASLEXT) $(OUT)/SETCAT.$(FASLEXT) \ $(OUT)/MONOPC.$(FASLEXT): $(OUT)/SGPOPC.$(FASLEXT) $(OUT)/FSAGG.$(FASLEXT): $(OUT)/FINAGG.$(FASLEXT) +$(OUT)/SMAGG.$(FASLEXT): $(OUT)/HOAGG.$(FASLEXT) $(OUT)/FINAGG.$(FASLEXT): $(OUT)/HOAGG.$(FASLEXT) $(OUT)/HOMOTOP.$(FASLEXT): $(OUT)/KOERCE.$(FASLEXT) $(OUT)/KRCFROM.$(FASLEXT) diff --git a/src/algebra/aggcat.spad.pamphlet b/src/algebra/aggcat.spad.pamphlet index 2d539d44..baa4a420 100644 --- a/src/algebra/aggcat.spad.pamphlet +++ b/src/algebra/aggcat.spad.pamphlet @@ -208,6 +208,25 @@ FiniteAggregate(S: Type): Category == Exports where @ +\section{} + +<<category SMAGG ShallowlyMutableAggregate>>= +)abbrev category SMAGG ShallowlyMutableAggregate +++ Author: Gabriel Dos Reis +++ Date Created: May 17, 2013 +++ Date Last Created: May 17, 2013 +++ Description: +++ This category describes the class of homogeneous aggregates +++ that support in place mutation that do not change their general +++ shapes. +ShallowlyMutableAggregate(S: Type): Category == Exports where + Exports == HomogeneousAggregate S with + shallowlyMutable -- FIXME: TEMPORARY. + map!: (S->S,%) -> % + ++ \spad{map!(f,u)} destructively replaces each element + ++ \spad{x} of \spad{u} by \spad{f(x)} + +@ @@ -2801,6 +2820,7 @@ BitAggregate(): Category == <<category AGG Aggregate>> <<category HOAGG HomogeneousAggregate>> +<<category SMAGG ShallowlyMutableAggregate>> <<category FINAGG FiniteAggregate>> <<category CLAGG Collection>> <<category BGAGG BagAggregate>> diff --git a/src/algebra/exposed.lsp.pamphlet b/src/algebra/exposed.lsp.pamphlet index 221e7b9f..c0228db0 100644 --- a/src/algebra/exposed.lsp.pamphlet +++ b/src/algebra/exposed.lsp.pamphlet @@ -661,6 +661,7 @@ (|SetAggregate| . SETAGG) (|SetCategory| . SETCAT) (|SExpressionCategory| . SEXCAT) + (|ShallowlyMutableAggregate| . SMAGG) (|SpadAstExports| . SPADXPT) (|SpadSyntaxCategory| . SASTCAT) (|SpecialFunctionCategory| . SPFCAT) |