Mercurial > urweb
comparison src/compiler.sml @ 1186:a4ac900d3085
Remove unpoly1
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Tue, 16 Mar 2010 15:39:16 -0400 |
parents | 338be96f8533 |
children | 5eac14322548 |
comparison
equal
deleted
inserted
replaced
1185:338be96f8533 | 1186:a4ac900d3085 |
---|---|
93 else | 93 else |
94 SOME v | 94 SOME v |
95 end, | 95 end, |
96 print = #print ph, | 96 print = #print ph, |
97 time = fn (input, pmap) => let | 97 time = fn (input, pmap) => let |
98 val () = if !debug then | |
99 print ("Starting " ^ name ^ "....\n") | |
100 else | |
101 () | |
98 val befor = Time.now () | 102 val befor = Time.now () |
99 val v = #func ph input | 103 val v = #func ph input |
100 val elapsed = Time.- (Time.now (), befor) | 104 val elapsed = Time.- (Time.now (), befor) |
101 in | 105 in |
106 if !debug then | |
107 print ("Finished " ^ name ^ ".\n") | |
108 else | |
109 (); | |
102 (if ErrorMsg.anyErrors () then | 110 (if ErrorMsg.anyErrors () then |
103 NONE | 111 NONE |
104 else | 112 else |
105 SOME v, | 113 SOME v, |
106 (name, elapsed) :: pmap) | 114 (name, elapsed) :: pmap) |
960 val toRpcify = transform rpcify "rpcify" o toShake1 | 968 val toRpcify = transform rpcify "rpcify" o toShake1 |
961 | 969 |
962 val toCore_untangle2 = transform core_untangle "core_untangle2" o toRpcify | 970 val toCore_untangle2 = transform core_untangle "core_untangle2" o toRpcify |
963 val toShake2 = transform shake "shake2" o toCore_untangle2 | 971 val toShake2 = transform shake "shake2" o toCore_untangle2 |
964 | 972 |
973 val toEspecialize1 = transform especialize "especialize1" o toShake2 | |
974 | |
975 val toCore_untangle3 = transform core_untangle "core_untangle3" o toEspecialize1 | |
976 val toShake3 = transform shake "shake3" o toCore_untangle3 | |
977 | |
978 val tag = { | |
979 func = Tag.tag, | |
980 print = CorePrint.p_file CoreEnv.empty | |
981 } | |
982 | |
983 val toTag = transform tag "tag" o toShake3 | |
984 | |
985 val reduce = { | |
986 func = Reduce.reduce, | |
987 print = CorePrint.p_file CoreEnv.empty | |
988 } | |
989 | |
990 val toReduce = transform reduce "reduce" o toTag | |
991 | |
992 val toShakey = transform shake "shakey" o toReduce | |
993 | |
965 val unpoly = { | 994 val unpoly = { |
966 func = Unpoly.unpoly, | 995 func = Unpoly.unpoly, |
967 print = CorePrint.p_file CoreEnv.empty | 996 print = CorePrint.p_file CoreEnv.empty |
968 } | 997 } |
969 | 998 |
970 val toUnpoly1 = transform unpoly "unpoly1" o toShake2 | 999 val toUnpoly = transform unpoly "unpoly" o toShakey |
971 | |
972 val toEspecialize1 = transform especialize "especialize1" o toUnpoly1 | |
973 | |
974 val toCore_untangle3 = transform core_untangle "core_untangle3" o toEspecialize1 | |
975 val toShake3 = transform shake "shake3" o toCore_untangle3 | |
976 | |
977 val tag = { | |
978 func = Tag.tag, | |
979 print = CorePrint.p_file CoreEnv.empty | |
980 } | |
981 | |
982 val toTag = transform tag "tag" o toShake3 | |
983 | |
984 val reduce = { | |
985 func = Reduce.reduce, | |
986 print = CorePrint.p_file CoreEnv.empty | |
987 } | |
988 | |
989 val toReduce = transform reduce "reduce" o toTag | |
990 | |
991 val toUnpoly2 = transform unpoly "unpoly2" o toReduce | |
992 | 1000 |
993 val specialize = { | 1001 val specialize = { |
994 func = Specialize.specialize, | 1002 func = Specialize.specialize, |
995 print = CorePrint.p_file CoreEnv.empty | 1003 print = CorePrint.p_file CoreEnv.empty |
996 } | 1004 } |
997 | 1005 |
998 val toSpecialize = transform specialize "specialize" o toUnpoly2 | 1006 val toSpecialize = transform specialize "specialize" o toUnpoly |
999 | 1007 |
1000 val toShake4 = transform shake "shake4" o toSpecialize | 1008 val toShake4 = transform shake "shake4" o toSpecialize |
1001 | 1009 |
1002 val toEspecialize2 = transform especialize "especialize2" o toShake4 | 1010 val toEspecialize2 = transform especialize "especialize2" o toShake4 |
1003 | 1011 |