comparison src/compiler.sig @ 202:af5bd54cbbd7

Finish moving all phases to the new interface
author Adam Chlipala <adamc@hcoop.net>
date Tue, 12 Aug 2008 14:55:05 -0400
parents f2cac0dba9bf
children 71bafe66dbe1
comparison
equal deleted inserted replaced
201:f2cac0dba9bf 202:af5bd54cbbd7
28 (* Laconic/Web main compiler interface *) 28 (* Laconic/Web main compiler interface *)
29 29
30 signature COMPILER = sig 30 signature COMPILER = sig
31 31
32 type job = string list 32 type job = string list
33 (*val compile : job -> unit*) 33 val compile : job -> unit
34 val compileC : {cname : string, oname : string, ename : string} -> unit 34 val compileC : {cname : string, oname : string, ename : string} -> unit
35 35
36 type ('src, 'dst) phase 36 type ('src, 'dst) phase
37 type ('src, 'dst) transform 37 type ('src, 'dst) transform
38 38
49 49
50 val parse : (job, Source.file) phase 50 val parse : (job, Source.file) phase
51 val elaborate : (Source.file, Elab.file) phase 51 val elaborate : (Source.file, Elab.file) phase
52 val explify : (Elab.file, Expl.file) phase 52 val explify : (Elab.file, Expl.file) phase
53 val corify : (Expl.file, Core.file) phase 53 val corify : (Expl.file, Core.file) phase
54 val shake : (Core.file, Core.file) phase
55 val tag : (Core.file, Core.file) phase
56 val reduce : (Core.file, Core.file) phase
57 val specialize : (Core.file, Core.file) phase
58 val monoize : (Core.file, Mono.file) phase
59 val mono_opt : (Mono.file, Mono.file) phase
60 val untangle : (Mono.file, Mono.file) phase
61 val mono_reduce : (Mono.file, Mono.file) phase
62 val mono_shake : (Mono.file, Mono.file) phase
63 val cjrize : (Mono.file, Cjr.file) phase
54 64
55 val toParse : (job, Source.file) transform 65 val toParse : (job, Source.file) transform
56 val toElaborate : (job, Elab.file) transform 66 val toElaborate : (job, Elab.file) transform
57 val toExplify : (job, Expl.file) transform 67 val toExplify : (job, Expl.file) transform
58 val toCorify : (job, Core.file) transform 68 val toCorify : (job, Core.file) transform
69 val toShake1 : (job, Core.file) transform
70 val toTag : (job, Core.file) transform
71 val toReduce : (job, Core.file) transform
72 val toSpecialize : (job, Core.file) transform
73 val toShake2 : (job, Core.file) transform
74 val toMonoize : (job, Mono.file) transform
75 val toMono_opt1 : (job, Mono.file) transform
76 val toUntangle : (job, Mono.file) transform
77 val toMono_reduce : (job, Mono.file) transform
78 val toMono_shake : (job, Mono.file) transform
79 val toMono_opt2 : (job, Mono.file) transform
80 val toCjrize : (job, Cjr.file) transform
59 81
60 end 82 end