[MLton-commit] r4460
Matthew Fluet
MLton@mlton.org
Thu, 4 May 2006 19:48:11 -0700
Relaxing type sharing constraints; not working completely yet
----------------------------------------------------------------------
U mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/Makefile
U mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/build/sources.mlb
U mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/integer/int.sml
U mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/libs/basis-2002/top-level/basis.sig
U mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/libs/basis-extra/top-level/basis.sig
U mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/mlton/mlton.sml
U mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/primitive/primitive.mlb
----------------------------------------------------------------------
Modified: mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/Makefile
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/Makefile 2006-05-05 01:03:36 UTC (rev 4459)
+++ mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/Makefile 2006-05-05 02:48:10 UTC (rev 4460)
@@ -47,7 +47,7 @@
-mlb-path-map "maps/$$defint" \
-mlb-path-map "maps/$$defreal" \
-mlb-path-map "maps/$$defword" \
- build/sources.mlb; \
+ libs/all.mlb; \
done; done; done; done; done; done; done
.PHONY: type-check
@@ -70,5 +70,5 @@
-mlb-path-map "maps/$$defint" \
-mlb-path-map "maps/$$defreal" \
-mlb-path-map "maps/$$defword" \
- build/sources.mlb; \
+ libs/all.mlb; \
done; done; done; done; done; done; done; done
Modified: mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/build/sources.mlb
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/build/sources.mlb 2006-05-05 01:03:36 UTC (rev 4459)
+++ mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/build/sources.mlb 2006-05-05 02:48:10 UTC (rev 4460)
@@ -21,7 +21,7 @@
../integer/word0.sml
local
../config/bind/int-prim.sml
- (* ../config/bind/pointer-prim.sml *)
+ ../config/bind/pointer-prim.sml
../config/bind/real-prim.sml
../config/bind/word-prim.sml
in ann "forceUsed" in
@@ -113,7 +113,7 @@
../integer/word.sml
local
../config/bind/int-top.sml
- (* ../config/bind/pointer-prim.sml *)
+ ../config/bind/pointer-prim.sml
../config/bind/real-prim.sml
../config/bind/word-top.sml
in ann "forceUsed" in
@@ -146,7 +146,7 @@
../integer/pack-word.sml
local
../config/bind/int-top.sml
- (* ../config/bind/pointer-prim.sml *)
+ ../config/bind/pointer-prim.sml
../config/bind/real-prim.sml
../config/bind/word-top.sml
in ann "forceUsed" in
@@ -191,7 +191,7 @@
../real/pack-real.sml
local
../config/bind/int-top.sml
- (* ../config/bind/pointer-prim.sml *)
+ ../config/bind/pointer-prim.sml
../config/bind/real-top.sml
../config/bind/word-top.sml
in ann "forceUsed" in
Modified: mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/integer/int.sml
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/integer/int.sml 2006-05-05 01:03:36 UTC (rev 4459)
+++ mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/integer/int.sml 2006-05-05 02:48:10 UTC (rev 4460)
@@ -6,7 +6,7 @@
* See the file MLton-LICENSE for details.
*)
-functor Integer (I: PRE_INTEGER_EXTRA) : INTEGER_EXTRA =
+functor Integer (I: PRE_INTEGER_EXTRA): INTEGER_EXTRA =
struct
open I
Modified: mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/libs/basis-2002/top-level/basis.sig
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/libs/basis-2002/top-level/basis.sig 2006-05-05 01:03:36 UTC (rev 4459)
+++ mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/libs/basis-2002/top-level/basis.sig 2006-05-05 02:48:10 UTC (rev 4460)
@@ -328,29 +328,31 @@
(* Can't use sharing on type array or vector, because they are rigid tycons.
* Don't need it anyways, since it's built into the ARRAY and VECTOR signatures.
*)
-(* sharing type array = Array.array *)
-(* sharing type vector = Vector.vector *)
- (*
+(*
+ sharing type array = Array.array
+ sharing type vector = Vector.vector
+*)
+(*
sharing type ref = General.ref
- *)
- (*
+*)
+(*
sharing type bool = Bool.bool
- *)
+*)
sharing type option = Option.option
sharing type order = General.order
- (*
+(*
sharing type list = List.list
- *)
+*)
- sharing type int = Int32.int
- sharing type real = Real64.real
- sharing type word = Word32.word
-
(* Required structures *)
-(* sharing type BinIO.StreamIO.elem = Word8.word *)
+(*
+ sharing type BinIO.StreamIO.elem = Word8.word
+*)
sharing type BinIO.StreamIO.reader = BinPrimIO.reader
sharing type BinIO.StreamIO.pos = BinPrimIO.pos
-(* sharing type BinIO.StreamIO.vector = Word8Vector.vector *)
+(*
+ sharing type BinIO.StreamIO.vector = Word8Vector.vector
+*)
sharing type BinIO.StreamIO.writer = BinPrimIO.writer
sharing type BinPrimIO.array = Word8Array.array
sharing type BinPrimIO.array_slice = Word8ArraySlice.slice
@@ -387,15 +389,18 @@
sharing type Text.CharArray.array = CharArray.array
sharing type Text.CharArraySlice.slice = CharArraySlice.slice
sharing type Text.CharVectorSlice.slice = CharVectorSlice.slice
-(* redundant *)
-(* sharing type TextIO.elem = char *)
-(* sharing type TextIO.vector = string *)
+ (* redundant *)
+(*
+ sharing type TextIO.elem = char
+ sharing type TextIO.vector = string
+*)
sharing type TextPrimIO.array = CharArray.array
sharing type TextPrimIO.array_slice = CharArraySlice.slice
sharing type TextPrimIO.elem = Char.char
sharing type TextPrimIO.pos = Position.int
sharing type TextPrimIO.vector = CharVector.vector
sharing type TextPrimIO.vector_slice = CharVectorSlice.slice
+ sharing type Word.word = word
sharing type Word8Array.elem = Word8.word
sharing type Word8Array.vector = Word8Vector.vector
sharing type Word8ArraySlice.elem = Word8.word
@@ -450,7 +455,6 @@
sharing type Int16VectorSlice.vector = Int16Vector.vector
sharing type Int16Array2.elem = Int16.int
sharing type Int16Array2.vector = Int16Vector.vector
- sharing type Int32.int = Int.int
sharing type Int32Array.elem = Int32.int
sharing type Int32Array.vector = Int32Vector.vector
sharing type Int32ArraySlice.elem = Int32.int
@@ -574,7 +578,6 @@
sharing type Word16VectorSlice.vector = Word16Vector.vector
sharing type Word16Array2.elem = Word16.word
sharing type Word16Array2.vector = Word16Vector.vector
- sharing type Word32.word = Word.word
sharing type Word32Array.elem = Word32.word
sharing type Word32Array.vector = Word32Vector.vector
sharing type Word32ArraySlice.elem = Word32.word
Modified: mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/libs/basis-extra/top-level/basis.sig
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/libs/basis-extra/top-level/basis.sig 2006-05-05 01:03:36 UTC (rev 4459)
+++ mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/libs/basis-extra/top-level/basis.sig 2006-05-05 02:48:10 UTC (rev 4460)
@@ -363,7 +363,7 @@
*)
sharing type int = Int32.int
- sharing type real = Real64.real
+ (* sharing type real = Real64.real *)
sharing type word = Word32.word
(* Required structures *)
@@ -411,7 +411,7 @@
sharing type Text.CharArray.array = CharArray.array
sharing type Text.CharArraySlice.slice = CharArraySlice.slice
sharing type Text.CharVectorSlice.slice = CharVectorSlice.slice
-(* redundant *)
+ (* redundant *)
(*
sharing type TextIO.elem = char
sharing type TextIO.vector = string
@@ -422,6 +422,7 @@
sharing type TextPrimIO.pos = Position.int
sharing type TextPrimIO.vector = CharVector.vector
sharing type TextPrimIO.vector_slice = CharVectorSlice.slice
+ sharing type Word.word = word
sharing type Word8Array.elem = Word8.word
sharing type Word8Array.vector = Word8Vector.vector
sharing type Word8ArraySlice.elem = Word8.word
@@ -476,7 +477,6 @@
sharing type Int16VectorSlice.vector = Int16Vector.vector
sharing type Int16Array2.elem = Int16.int
sharing type Int16Array2.vector = Int16Vector.vector
- sharing type Int32.int = Int.int
sharing type Int32Array.elem = Int32.int
sharing type Int32Array.vector = Int32Vector.vector
sharing type Int32ArraySlice.elem = Int32.int
@@ -600,7 +600,6 @@
sharing type Word16VectorSlice.vector = Word16Vector.vector
sharing type Word16Array2.elem = Word16.word
sharing type Word16Array2.vector = Word16Vector.vector
- sharing type Word32.word = Word.word
sharing type Word32Array.elem = Word32.word
sharing type Word32Array.vector = Word32Vector.vector
sharing type Word32ArraySlice.elem = Word32.word
@@ -740,6 +739,7 @@
where type Int64.int = Int64.int
where type IntInf.int = IntInf.int
where type Real32.real = Real32.real
+ where type Real64.real = Real64.real
where type Word1.word = Word1.word
where type Word2.word = Word2.word
where type Word3.word = Word3.word
Modified: mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/mlton/mlton.sml
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/mlton/mlton.sml 2006-05-05 01:03:36 UTC (rev 4459)
+++ mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/mlton/mlton.sml 2006-05-05 02:48:10 UTC (rev 4460)
@@ -72,7 +72,7 @@
structure World = MLtonWorld
structure Word =
struct
- open Word32
+ open Word
type t = word
end
structure Word8 =
Modified: mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/primitive/primitive.mlb
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/primitive/primitive.mlb 2006-05-05 01:03:36 UTC (rev 4459)
+++ mlton/branches/on-20050822-x86_64-branch/basis-library.refactor/primitive/primitive.mlb 2006-05-05 02:48:10 UTC (rev 4460)
@@ -38,7 +38,7 @@
local
../config/bind/int-prim.sml
- (* ../config/bind/pointer-prim.sml *)
+ ../config/bind/pointer-prim.sml
../config/bind/real-prim.sml
../config/bind/word-prim.sml
in ann "forceUsed" in