tock-mirror/common
Adam Sampson 6debf9292f Rework Traversal, and convert all passes to use it.
This changes the Traversal API to the one that I've been working on in
the Polyplate branch, but implemented in terms of Data. The
performance isn't as good as the Polyplate version, but the code is a
lot simpler because it doesn't need all the type constraints (and it
doesn't make GHC struggle).

This also reworks all the passes in Tock to use the new API, including
those that previously used makeGeneric (which I've now removed) or
everywhereM. Most of the passes are simpler because of this, and I
suspect it's fixed a few subtle bugs resulting from missing recursion
in makeGeneric code.

I haven't yet profiled this, but subjectively it seems about the same
as the old Traversal (and thus faster for all the passes that didn't
yet use it).
2008-05-25 20:13:57 +00:00
..
CommonTest.hs Go back to passing the value to the type-contains function. 2008-04-02 16:11:13 +00:00
Errors.hs Added a warnPC function (like diePC) for use with formatCode 2008-03-22 18:34:40 +00:00
EvalConstants.hs Added a type-class for retrieving the (AST) type of things 2008-05-17 11:41:52 +00:00
EvalLiterals.hs Clean up EvalLiterals. 2008-04-08 00:29:23 +00:00
GenericUtils.hs Move DataBox into Utils. 2008-05-09 09:50:42 +00:00
Intrinsics.hs Added support for some intrinsic (time-related) functions in Rain 2008-03-22 18:58:10 +00:00
Pattern.hs Added the -fwarn-missing-signatures option and added all missing type signatures for non-test modules (and most for test modules too) 2008-02-05 23:06:03 +00:00
PrettyShow.hs Initial implementation of the occam-pi preprocessor. 2008-02-28 20:27:30 +00:00
ShowCode.hs Added a few extra cases in ShowCode, for some Rain things 2008-05-20 23:42:52 +00:00
TestFramework.hs Moved all the testPass* functions into the TestMonad, using unsafePerformIO for running them inside QuickCheck 2008-03-05 16:06:14 +00:00
TestHarness.hs Changed TestHarness to support Rain test files as well as occam 2008-05-17 13:13:52 +00:00
TestUtils.hs Renamed ndType to ndSpecType, as per Trac ticket #59 2008-05-21 13:38:51 +00:00
TreeUtils.hs Moved all the testPass* functions into the TestMonad, using unsafePerformIO for running them inside QuickCheck 2008-03-05 16:06:14 +00:00
Types.hs Rework Traversal, and convert all passes to use it. 2008-05-25 20:13:57 +00:00
Utils.hs Added a mapMapWithKeyM function to Utils, and cleaned up some of the whitespace 2008-05-14 12:18:27 +00:00