aboutsummaryrefslogtreecommitdiff
path: root/src/hyper/pages/UNISEG.ht
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2007-08-14 05:14:52 +0000
committerdos-reis <gdr@axiomatics.org>2007-08-14 05:14:52 +0000
commitab8cc85adde879fb963c94d15675783f2cf4b183 (patch)
treec202482327f474583b750b2c45dedfc4e4312b1d /src/hyper/pages/UNISEG.ht
downloadopen-axiom-ab8cc85adde879fb963c94d15675783f2cf4b183.tar.gz
Initial population.
Diffstat (limited to 'src/hyper/pages/UNISEG.ht')
-rw-r--r--src/hyper/pages/UNISEG.ht68
1 files changed, 68 insertions, 0 deletions
diff --git a/src/hyper/pages/UNISEG.ht b/src/hyper/pages/UNISEG.ht
new file mode 100644
index 00000000..229c77c7
--- /dev/null
+++ b/src/hyper/pages/UNISEG.ht
@@ -0,0 +1,68 @@
+% Copyright The Numerical Algorithms Group Limited 1992-94. All rights reserved.
+% !! DO NOT MODIFY THIS FILE BY HAND !! Created by ht.awk.
+\newcommand{\UniversalSegmentXmpTitle}{UniversalSegment}
+\newcommand{\UniversalSegmentXmpNumber}{9.84}
+%
+% =====================================================================
+\begin{page}{UniversalSegmentXmpPage}{9.84 UniversalSegment}
+% =====================================================================
+\beginscroll
+
+The \spadtype{UniversalSegment} domain generalizes \spadtype{Segment}
+by allowing segments without a ``hi'' end point.
+\xtc{
+}{
+\spadpaste{pints := 1.. \bound{pints}}
+}
+\xtc{
+}{
+\spadpaste{nevens := (0..) by -2 \bound{nevens}}
+}
+\xtc{
+Values of type \spadtype{Segment} are automatically converted to
+type \spadtype{UniversalSegment} when appropriate.
+%-% \HDexptypeindex{Segment}{UniversalSegmentXmpPage}{9.84}{UniversalSegment}
+}{
+\spadpaste{useg: UniversalSegment(Integer) := 3..10 \bound{useg}}
+}
+\xtc{
+The operation \spadfunFrom{hasHi}{UniversalSegment} is used to test
+whether a segment has a \spad{hi} end point.
+}{
+\spadpaste{hasHi pints \free{pints}}
+}
+\xtc{
+}{
+\spadpaste{hasHi nevens \free{nevens}}
+}
+\xtc{
+}{
+\spadpaste{hasHi useg \free{useg}}
+}
+\xtc{
+All operations available on type \spadtype{Segment} apply to
+\spadtype{UniversalSegment}, with the proviso that expansions produce
+streams rather than lists.
+This is to accommodate infinite expansions.
+}{
+\spadpaste{expand pints \free{pints}}
+}
+\xtc{
+}{
+\spadpaste{expand nevens \free{nevens}}
+}
+\xtc{
+}{
+\spadpaste{expand [1, 3, 10..15, 100..]}
+}
+
+For more information on related topics, see
+\downlink{`Segment'}{SegmentXmpPage}\ignore{Segment},
+\downlink{`SegmentBinding'}{SegmentBindingXmpPage}\ignore{SegmentBinding},
+\downlink{`List'}{ListXmpPage}\ignore{List}, and
+\downlink{`Stream'}{StreamXmpPage}\ignore{Stream}.
+\showBlurb{UniversalSegment}
+\endscroll
+\autobuttons
+\end{page}
+%