[MLton-commit] r4964

Vesa Karvonen vesak at mlton.org
Sun Dec 10 11:17:19 PST 2006


Reorganized public files.
----------------------------------------------------------------------

D   mltonlib/trunk/com/ssh/extended-basis/unstable/public/iso.sig

----------------------------------------------------------------------

Deleted: mltonlib/trunk/com/ssh/extended-basis/unstable/public/iso.sig
===================================================================
--- mltonlib/trunk/com/ssh/extended-basis/unstable/public/iso.sig	2006-12-10 19:17:04 UTC (rev 4963)
+++ mltonlib/trunk/com/ssh/extended-basis/unstable/public/iso.sig	2006-12-10 19:17:13 UTC (rev 4964)
@@ -1,51 +0,0 @@
-(* Copyright (C) 2006 SSH Communications Security, Helsinki, Finland
- *
- * This code is released under the MLton license, a BSD-style license.
- * See the LICENSE file or http://mlton.org/License for details.
- *)
-
-(** Signature for the {Iso} structure for isomorphisms. *)
-signature ISO = sig
-   type ('a, 'b) t = ('a -> 'b) * ('b -> 'a)
-   (** Witness to an isomorphism between {'a} and {'b}. *)
-
-   val id : ('a, 'a) t
-   (** The trivial isomorphism.  This is always equivalent to {(id, id)}. *)
-
-   (** == Basic == *)
-
-   val to : ('a, 'b) t -> 'a -> 'b
-   (** Extracts the injection part of the given isomorphism. *)
-
-   val from : ('a, 'b) t -> 'b -> 'a
-   (** Extracts the projection part of the given isomorphism. *)
-
-   val swap : ('a, 'b) t -> ('b, 'a) t
-   (** Switch the direction of the isomorphism. *)
-
-   (** == Combinators for Building Isomorphisms == *)
-
-   val map : ('c, 'a) t * ('b, 'd) t -> ('a, 'b) t -> ('c, 'd) t
-   (** Changes the domain and range of an isomorphism. *)
-
-   val <--> : ('a, 'b) t * ('c, 'a) t -> ('c, 'b) t
-   (** Isomorphism composition. *)
-
-   val --> : ('c, 'a) t * ('b, 'd) t -> (('a, 'b) Fn.t, ('c, 'd) Fn.t) t
-   (**
-    * Creates an isomorphism between functions given isomorphisms between
-    * domains and ranges.
-    *)
-
-   val +` : ('a, 'c) t * ('b, 'd) t -> (('a, 'b) Sum.t, ('c, 'd) Sum.t) t
-   (**
-    * Creates an isomorphism between sums given isomorphisms between
-    * elements.
-    *)
-
-   val *` : ('a, 'c) t * ('b, 'd) t -> (('a, 'b) Product.t, ('c, 'd) Product.t) t
-   (**
-    * Creates an isomorphism between products given isomorphisms between
-    * elements.
-    *)
-end




More information about the MLton-commit mailing list