diff options
author | dos-reis <gdr@axiomatics.org> | 2013-05-19 17:44:50 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2013-05-19 17:44:50 +0000 |
commit | cc69cdefa3acf48bad75ac52f55cd9f27c970eab (patch) | |
tree | 2e86afab7e70d80c194cd70fc1c9e9525cf2c062 /src/algebra/stream.spad.pamphlet | |
parent | 1da04848e6612031bc25a3f238c37c47204c9e93 (diff) | |
download | open-axiom-cc69cdefa3acf48bad75ac52f55cd9f27c970eab.tar.gz |
* algebra/aggcat.spad.pamphlet (Aggregate) [#]: Remove export.
(UnaryRecursiveAggregate): Make definiton conditional.
* algebra/stream.spad.pamphlet (LazyStreamAggregate): Likewise.
Diffstat (limited to 'src/algebra/stream.spad.pamphlet')
-rw-r--r-- | src/algebra/stream.spad.pamphlet | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/src/algebra/stream.spad.pamphlet b/src/algebra/stream.spad.pamphlet index 90fd504c..7b2db025 100644 --- a/src/algebra/stream.spad.pamphlet +++ b/src/algebra/stream.spad.pamphlet @@ -122,15 +122,17 @@ LazyStreamAggregate(S:Type): Category == StreamAggregate(S) with empty? x => n = 0 size?(rst x,(n-1) :: NNI) - # x == - -- error if stream is not finite - y := x - for i in 0.. repeat - explicitlyEmpty? y => return i - lazy? y => error "#: infinite stream" - y := rst y - if odd? i then x := rst x - eq?(x,y) => error "#: infinite stream" +--% FINAGG functions + if % has FiniteAggregate S then + # x == + -- error if stream is not finite + y := x + for i in 0.. repeat + explicitlyEmpty? y => return i + lazy? y => error "#: infinite stream" + y := rst y + if odd? i then x := rst x + eq?(x,y) => error "#: infinite stream" --% CLAGG functions |