4 |
4 |
5 (* initial ML name space *) |
5 (* initial ML name space *) |
6 |
6 |
7 use "ML/ml_system.ML"; |
7 use "ML/ml_system.ML"; |
8 use "ML/ml_name_space.ML"; |
8 use "ML/ml_name_space.ML"; |
|
9 use "ML/ml_pervasive.ML"; |
9 |
10 |
10 if List.exists (fn (a, _) => a = "FixedInt") (#allStruct ML_Name_Space.global ()) then () |
11 if List.exists (fn (a, _) => a = "FixedInt") (#allStruct ML_Name_Space.global ()) then () |
11 else use "ML/fixed_int_dummy.ML"; |
12 else use "ML/fixed_int_dummy.ML"; |
12 |
13 |
13 structure Distribution = (*filled-in by makedist*) |
14 structure Distribution = (*filled-in by makedist*) |
20 |
21 |
21 (* multithreading *) |
22 (* multithreading *) |
22 |
23 |
23 use "General/exn.ML"; |
24 use "General/exn.ML"; |
24 |
25 |
25 val seconds = Time.fromReal; |
|
26 |
|
27 open Thread; |
|
28 use "Concurrent/multithreading.ML"; |
26 use "Concurrent/multithreading.ML"; |
29 |
|
30 use "Concurrent/unsynchronized.ML"; |
27 use "Concurrent/unsynchronized.ML"; |
31 val _ = ML_Name_Space.forget_val "ref"; |
28 |
32 val _ = ML_Name_Space.forget_type "ref"; |
29 |
33 |
30 (* ML system *) |
34 |
|
35 (* pervasive environment *) |
|
36 |
|
37 val _ = |
|
38 List.app ML_Name_Space.forget_val |
|
39 ["isSome", "getOpt", "valOf", "foldl", "foldr", "print", "explode", "concat"]; |
|
40 |
|
41 val ord = SML90.ord; |
|
42 val chr = SML90.chr; |
|
43 val raw_explode = SML90.explode; |
|
44 val implode = SML90.implode; |
|
45 |
|
46 |
|
47 (* ML runtime system *) |
|
48 |
31 |
49 use "ML/ml_heap.ML"; |
32 use "ML/ml_heap.ML"; |
50 use "ML/ml_profiling.ML"; |
33 use "ML/ml_profiling.ML"; |
51 |
|
52 val pointer_eq = PolyML.pointerEq; |
|
53 |
|
54 |
|
55 (* ML toplevel pretty printing *) |
|
56 |
|
57 use "ML/ml_pretty.ML"; |
34 use "ML/ml_pretty.ML"; |
58 |
|
59 val error_depth = PolyML.error_depth; |
|
60 |
|
61 |
|
62 (* ML compiler *) |
|
63 |
|
64 use "ML/ml_compiler0.ML"; |
35 use "ML/ml_compiler0.ML"; |
65 |
|
66 |
|
67 (* ML debugger *) |
|
68 |
|
69 use_no_debug "ML/ml_debugger.ML"; |
36 use_no_debug "ML/ml_debugger.ML"; |
70 |
37 |
71 |
38 |
72 |
39 |
73 (** bootstrap phase 1: towards ML within position context *) |
40 (** bootstrap phase 1: towards ML within position context *) |