[MLton-commit] r4813
Vesa Karvonen
vesak at mlton.org
Sun Nov 12 07:34:05 PST 2006
Added convenience aliases Emb.t and Iso.t.
----------------------------------------------------------------------
U mltonlib/trunk/com/ssh/extended-basis/unstable/detail/emb.sml
U mltonlib/trunk/com/ssh/extended-basis/unstable/detail/iso.sml
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/array.sig
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/char.sig
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/emb.sig
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/export.sml
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/int-inf.sig
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/integer.sig
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/iso.sig
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/mono-array.sig
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/mono-vector.sig
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/real.sig
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/string.sig
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/vector.sig
U mltonlib/trunk/com/ssh/extended-basis/unstable/public/word.sig
----------------------------------------------------------------------
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/detail/emb.sml
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/detail/emb.sml 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/detail/emb.sml 2006-11-12 15:34:03 UTC (rev 4813)
@@ -9,6 +9,7 @@
*)
structure Emb :> EMB = struct
type ('a, 'b) emb = ('a -> 'b) * ('b -> 'a option)
+ type ('a, 'b) t = ('a, 'b) emb
val id = (fn a => a, SOME)
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/detail/iso.sml
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/detail/iso.sml 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/detail/iso.sml 2006-11-12 15:34:03 UTC (rev 4813)
@@ -9,6 +9,7 @@
*)
structure Iso :> ISO = struct
type ('a, 'b) iso = ('a -> 'b) * ('b -> 'a)
+ type ('a, 'b) t = ('a, 'b) iso
val id = (fn a => a, fn a => a)
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/array.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/array.sig 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/array.sig 2006-11-12 15:34:03 UTC (rev 4813)
@@ -41,14 +41,14 @@
(** == Isomorphisms == *)
- val isoList : ('a array, 'a list) Iso.iso
+ val isoList : ('a array, 'a list) Iso.t
(**
* An isomorphism between arrays and lists. It is always equivalent to
* {(toList, fromList)}. Note that the isomorphism does not preserve
* identity.
*)
- val isoVector : ('a array, 'a vector) Iso.iso
+ val isoVector : ('a array, 'a vector) Iso.t
(**
* An isomorphism between arrays and vectors. It is always equivalent
* to {(toVector, fromVector)}. Note that the isomorphism does not
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/char.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/char.sig 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/char.sig 2006-11-12 15:34:03 UTC (rev 4813)
@@ -36,7 +36,7 @@
(** == Isomorphisms == *)
- val isoInt : (char, Int.int) Iso.iso
+ val isoInt : (char, Int.int) Iso.t
(**
* An isomorphism between characters and character codes. It always
* equals {(ord, chr)}. Note that the projection part of the
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/emb.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/emb.sig 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/emb.sig 2006-11-12 15:34:03 UTC (rev 4813)
@@ -13,6 +13,11 @@
* Embedding of {'a} into {'b} with injection and projection functions.
*)
+ type ('a, 'b) t = ('a, 'b) emb
+ (**
+ * Convenience alias.
+ *)
+
val id : ('a, 'a) emb
(**
* The identity embedding. This is always equivalent to {(fn a => a,
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/export.sml
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/export.sml 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/export.sml 2006-11-12 15:34:03 UTC (rev 4813)
@@ -6,8 +6,8 @@
(** == Implementation independent extensions == *)
-type ('a, 'b) emb = ('a, 'b) Emb.emb
-type ('a, 'b) iso = ('a, 'b) Iso.iso
+type ('a, 'b) emb = ('a, 'b) Emb.t
+type ('a, 'b) iso = ('a, 'b) Iso.t
signature ARRAY = ARRAY
signature BOOL = BOOL
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/int-inf.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/int-inf.sig 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/int-inf.sig 2006-11-12 15:34:03 UTC (rev 4813)
@@ -27,7 +27,7 @@
(** == Embeddings == *)
- val embString : (int, string) Emb.emb
+ val embString : (int, string) Emb.t
(**
* An embedding of integers into strings. It is always equivalent to
* {(toString, fromString)}.
@@ -35,14 +35,14 @@
(** == Isomorphisms == *)
- val isoInt : (int, Int.int) Iso.iso
+ val isoInt : (int, Int.int) Iso.t
(**
* An isomorphism between integers of type {int} and the default
* integer type. It is always equivalent to {(toInt, fromInt)}. Note
* that one of the injection and projection parts may be partial.
*)
- val isoLarge : (int, LargeInt.int) Iso.iso
+ val isoLarge : (int, LargeInt.int) Iso.t
(**
* An isomorphism between integers of type {int} and integers of type
* {LargeInt.int}. It is always equivalent to {(toLarge, fromLarge)}.
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/integer.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/integer.sig 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/integer.sig 2006-11-12 15:34:03 UTC (rev 4813)
@@ -27,7 +27,7 @@
(** == Embeddings == *)
- val embString : (int, string) Emb.emb
+ val embString : (int, string) Emb.t
(**
* An embedding of integers into strings. It is always equivalent to
* {(toString, fromString)}.
@@ -35,14 +35,14 @@
(** == Isomorphisms == *)
- val isoInt : (int, Int.int) Iso.iso
+ val isoInt : (int, Int.int) Iso.t
(**
* An isomorphism between integers of type {int} and the default
* integer type. It is always equivalent to {(toInt, fromInt)}. Note
* that one of the injection and projection parts may be partial.
*)
- val isoLarge : (int, LargeInt.int) Iso.iso
+ val isoLarge : (int, LargeInt.int) Iso.t
(**
* An isomorphism between integers of type {int} and integers of type
* {LargeInt.int}. It is always equivalent to {(toLarge, fromLarge)}.
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/iso.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/iso.sig 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/iso.sig 2006-11-12 15:34:03 UTC (rev 4813)
@@ -14,6 +14,11 @@
* functions.
*)
+ type ('a, 'b) t = ('a, 'b) iso
+ (**
+ * Convenience alias.
+ *)
+
val id : ('a, 'a) iso
(**
* The identity isomorphism. This is always equivalent to {(fn a => a,
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/mono-array.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/mono-array.sig 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/mono-array.sig 2006-11-12 15:34:03 UTC (rev 4813)
@@ -62,21 +62,21 @@
(** == Isomorphisms == *)
- val isoList : (array, elem list) Iso.iso
+ val isoList : (array, elem list) Iso.t
(**
* An isomorphism between arrays and lists. It is always equivalent to
* {(toList, fromList)}. Note that the isomorphism does not preserve
* identity.
*)
- val isoPoly : (array, elem Array.array) Iso.iso
+ val isoPoly : (array, elem Array.array) Iso.t
(**
* An isomorphism between monomorphic and polymorphic arrays. It is
* always equivalent to {(toPoly, fromPoly)}. Note that the
* isomorphism does not preserve identity.
*)
- val isoVector : (array, vector) Iso.iso
+ val isoVector : (array, vector) Iso.t
(**
* An isomorphism between arrays and vectors. It is always equivalent
* to {(toVector, fromVector)}. Note that the isomorphism does not
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/mono-vector.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/mono-vector.sig 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/mono-vector.sig 2006-11-12 15:34:03 UTC (rev 4813)
@@ -41,13 +41,13 @@
(** == Isomorphisms == *)
- val isoList : (vector, elem list) Iso.iso
+ val isoList : (vector, elem list) Iso.t
(**
* An isomorphism between vectors and lists. It is always equivalent
* to {(toList, fromList)}.
*)
- val isoPoly : (vector, elem Vector.vector) Iso.iso
+ val isoPoly : (vector, elem Vector.vector) Iso.t
(**
* An isomorphism between monomorphic and polymorphic vectors. It is
* always equivalent to {(toPoly, fromPoly)}.
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/real.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/real.sig 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/real.sig 2006-11-12 15:34:03 UTC (rev 4813)
@@ -17,13 +17,13 @@
(** == Embeddings == *)
- val embDecimal : (real, IEEEReal.decimal_approx) Emb.emb
+ val embDecimal : (real, IEEEReal.decimal_approx) Emb.t
(**
* An embedding of reals into decimal approximations. It is always
* equivalent to {(toDecimal, fromDecimal)}.
*)
- val embString : (real, string) Emb.emb
+ val embString : (real, string) Emb.t
(**
* An embedding of reals into strings. It is always equivalent to
* {(toString, fromString)}.
@@ -31,7 +31,7 @@
(** == Isomorphisms == *)
- val isoInt : IEEEReal.rounding_mode -> (real, Int.int) Iso.iso
+ val isoInt : IEEEReal.rounding_mode -> (real, Int.int) Iso.t
(**
* Returns an isomorphism between integers of type {Int.int} and reals
* given a rounding mode. Specifically, the result of {isoInt mode} is
@@ -39,7 +39,7 @@
* an isomorphism in the mathematical sense.
*)
- val isoLarge : IEEEReal.rounding_mode -> (real, LargeReal.real) Iso.iso
+ val isoLarge : IEEEReal.rounding_mode -> (real, LargeReal.real) Iso.t
(**
* Returns an isomorphism between reals of type {LargeReal.real} and
* reals of type {real} given a rounding mode. Specifically, the
@@ -48,7 +48,7 @@
* mathematical sense.
*)
- val isoLargeInt : IEEEReal.rounding_mode -> (real, LargeInt.int) Iso.iso
+ val isoLargeInt : IEEEReal.rounding_mode -> (real, LargeInt.int) Iso.t
(**
* Returns an isomorphism between integers of type {LargeInt.int} and
* reals given a rounding mode. Specifically, the result of
@@ -57,7 +57,7 @@
* mathematical sense.
*)
- val isoManExp : (real, {man : real, exp : int}) Iso.iso
+ val isoManExp : (real, {man : real, exp : int}) Iso.t
(**
* An isomorphism between reals and their representation as a mantissa
* and an exponent. It is always equivalent to {(toManExp,
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/string.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/string.sig 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/string.sig 2006-11-12 15:34:03 UTC (rev 4813)
@@ -17,13 +17,13 @@
(** == Embeddings == *)
- val embCString : (string, string) Emb.emb
+ val embCString : (string, string) Emb.t
(**
* An embedding of strings into C-style string literals. It is always
* equivalent to {(toCString, fromCString)}.
*)
- val embString : (string, string) Emb.emb
+ val embString : (string, string) Emb.t
(**
* An embedding of strings into SML-style string literals. It is
* always equivalent to {(toString, fromString)}.
@@ -31,7 +31,7 @@
(** == Isomorphisms == *)
- val isoList : (string, char list) Iso.iso
+ val isoList : (string, char list) Iso.t
(**
* An isomorphism between strings and lists. It is always equivalent
* to {(toList, fromList)}.
@@ -54,7 +54,7 @@
val foldri : (int * elem * 'a -> 'a) -> 'a -> vector -> 'a
val fromList : elem list -> vector
val fromPoly : elem Vector.vector -> vector
- val isoPoly : (vector, elem Vector.vector) Iso.iso
+ val isoPoly : (vector, elem Vector.vector) Iso.t
val length : vector -> int
val mapi : (int * elem -> elem) -> vector -> vector
val maxLen : int
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/vector.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/vector.sig 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/vector.sig 2006-11-12 15:34:03 UTC (rev 4813)
@@ -25,7 +25,7 @@
(** == Isomorphisms == *)
- val isoList : ('a vector, 'a list) Iso.iso
+ val isoList : ('a vector, 'a list) Iso.t
(**
* An isomorphism between vectors and lists. It is always equivalent
* to {(toList, fromList)}.
Modified: mltonlib/trunk/com/ssh/extended-basis/unstable/public/word.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/word.sig 2006-11-08 14:20:18 UTC (rev 4812)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/word.sig 2006-11-12 15:34:03 UTC (rev 4813)
@@ -72,7 +72,7 @@
(** == Embeddings == *)
- val embString : (word, string) Emb.emb
+ val embString : (word, string) Emb.t
(**
* An embedding of words into strings. It is always equivalent to
* {(toString, fromString)}.
@@ -80,49 +80,49 @@
(** == Isomorphisms == *)
- val isoInt : (word, Int.int) Iso.iso
+ val isoInt : (word, Int.int) Iso.t
(**
* An isomorphism between words of type {word} and the default integer
* type. It is always equivalent to {(toInt, fromInt)}.
*)
- val isoIntX : (word, Int.int) Iso.iso
+ val isoIntX : (word, Int.int) Iso.t
(**
* An isomorphism between words of type {word} and the default integer
* type. It is always equivalent to {(toIntX, fromInt)}.
*)
- val isoLarge : (word, LargeWord.word) Iso.iso
+ val isoLarge : (word, LargeWord.word) Iso.t
(**
* An isomorphism between words of type {word} and the {LargeWord.word}
* type. It is always equivalent to {(toLarge, fromLarge)}.
*)
- val isoLargeInt : (word, LargeInt.int) Iso.iso
+ val isoLargeInt : (word, LargeInt.int) Iso.t
(**
* An isomorphism between words of type {word} and the {LargeInt.int}
* type. It is always equivalent to {(toLargeInt, fromLargeInt)}.
*)
- val isoLargeIntX : (word, LargeInt.int) Iso.iso
+ val isoLargeIntX : (word, LargeInt.int) Iso.t
(**
* An isomorphism between words of type {word} and the {LargeInt.int}
* type. It is always equivalent to {(toLargeIntX, fromLargeInt)}.
*)
- val isoLargeX : (word, LargeWord.word) Iso.iso
+ val isoLargeX : (word, LargeWord.word) Iso.t
(**
* An isomorphism between words of type {word} and the {LargeWord.word}
* type. It is always equivalent to {(toLargeX, fromLarge)}.
*)
- val isoWord : (word, Word.word) Iso.iso
+ val isoWord : (word, Word.word) Iso.t
(**
* An isomorphism between words of type {word} and the default word
* type. It is always equivalent to {(toWord, fromWord)}.
*)
- val isoWordX : (word, Word.word) Iso.iso
+ val isoWordX : (word, Word.word) Iso.t
(**
* An isomorphism between words of type {word} and the default word
* type. It is always equivalent to {(toWordX, fromWordX)}.
More information about the MLton-commit
mailing list