Mercurial > urweb
comparison src/compiler.sml @ 642:4a125bbc602d
Conversion of functions to CPS, to facilitate ServerCall
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Sun, 08 Mar 2009 20:34:21 -0400 |
parents | 47947d6e9750 |
children | aa2290c32ce2 |
comparison
equal
deleted
inserted
replaced
641:b98f547a6a45 | 642:4a125bbc602d |
---|---|
451 print = CorePrint.p_file CoreEnv.empty | 451 print = CorePrint.p_file CoreEnv.empty |
452 } | 452 } |
453 | 453 |
454 val toRpcify = transform rpcify "rpcify" o toShake1 | 454 val toRpcify = transform rpcify "rpcify" o toShake1 |
455 | 455 |
456 val toCore_untangle2 = transform core_untangle "core_untangle2" o toRpcify | |
457 val toShake2 = transform shake "shake2" o toCore_untangle2 | |
458 | |
456 val tag = { | 459 val tag = { |
457 func = Tag.tag, | 460 func = Tag.tag, |
458 print = CorePrint.p_file CoreEnv.empty | 461 print = CorePrint.p_file CoreEnv.empty |
459 } | 462 } |
460 | 463 |
461 val toTag = transform tag "tag" o toRpcify | 464 val toTag = transform tag "tag" o toCore_untangle2 |
462 | 465 |
463 val reduce = { | 466 val reduce = { |
464 func = Reduce.reduce, | 467 func = Reduce.reduce, |
465 print = CorePrint.p_file CoreEnv.empty | 468 print = CorePrint.p_file CoreEnv.empty |
466 } | 469 } |
479 print = CorePrint.p_file CoreEnv.empty | 482 print = CorePrint.p_file CoreEnv.empty |
480 } | 483 } |
481 | 484 |
482 val toSpecialize = transform specialize "specialize" o toUnpoly | 485 val toSpecialize = transform specialize "specialize" o toUnpoly |
483 | 486 |
484 val toShake2 = transform shake "shake2" o toSpecialize | 487 val toShake3 = transform shake "shake3" o toSpecialize |
485 | 488 |
486 val monoize = { | 489 val monoize = { |
487 func = Monoize.monoize CoreEnv.empty, | 490 func = Monoize.monoize CoreEnv.empty, |
488 print = MonoPrint.p_file MonoEnv.empty | 491 print = MonoPrint.p_file MonoEnv.empty |
489 } | 492 } |
490 | 493 |
491 val toMonoize = transform monoize "monoize" o toShake2 | 494 val toMonoize = transform monoize "monoize" o toShake3 |
492 | 495 |
493 val mono_opt = { | 496 val mono_opt = { |
494 func = MonoOpt.optimize, | 497 func = MonoOpt.optimize, |
495 print = MonoPrint.p_file MonoEnv.empty | 498 print = MonoPrint.p_file MonoEnv.empty |
496 } | 499 } |