Commit Graph

2481 Commits

Author SHA1 Message Date
Neil Brown
b4a13ea0d0 Fixed the cabal build file for Polyplate 2009-01-13 15:37:44 +00:00
Neil Brown
83eed621dc Added more documentation to Polyplate and made sure to trim the trees for PolyplateSpine 2009-01-13 15:37:35 +00:00
Neil Brown
a6c4f3ba93 Made some more notes in the Makefile regarding compiler flags 2009-01-13 15:22:35 +00:00
Neil Brown
501778bc65 Added some section dividers to Polyplate's Schemes module 2009-01-12 18:59:50 +00:00
Neil Brown
3b7d530e90 Fixed more of the documentation for the Polyplate module 2009-01-12 18:49:52 +00:00
Neil Brown
0e6fd2993c Added a quick attempt at a cabal file for the polyplate library 2009-01-12 18:07:47 +00:00
Neil Brown
16162d3c60 Fiddled with the documentation for the Route module some more 2009-01-12 18:07:10 +00:00
Neil Brown
4672675ba8 Removed the GenericUtils module, now that everything uses Polyplate instead 2009-01-12 18:03:41 +00:00
Neil Brown
b0a34eb3a8 Improved some of polyplate's documentation, and renamed routeIdentity to identityRoute to avoid confusion with routeId 2009-01-12 17:34:59 +00:00
Neil Brown
d97b50f82a Switched CheckFramework over to use the new Polyplate library 2009-01-12 15:52:49 +00:00
Neil Brown
1d500b46ae Moved the SYB-based route stuff back into FlowUtils, and trimmed down the export list of GenericUtils 2008-12-15 10:36:48 +00:00
Neil Brown
8ea930541f Added routes to Polyplate, making the main class PolyplateMRoute and thus PolyplateM is a derivative of this with the old functionality
Also changed the generation of the instances to generate PolyplateMRoute instances instead of PolyplateM
2008-12-14 22:47:24 +00:00
Neil Brown
b94091a08c Moved all of the Route stuff out into a new polyplate module 2008-12-14 22:47:07 +00:00
Neil Brown
ccb6c7aa1d Fixed the types in various test modules to work with Polyplate 2008-12-14 19:18:00 +00:00
Neil Brown
92035a82a2 Got the test utilities working with the new Pass type synonym 2008-12-14 19:00:19 +00:00
Neil Brown
754bb7f023 Briefly fixed CheckFramework (and Checks) to compile, but not yet switched them over to using the Polyplate traversal mechanisms 2008-12-14 18:59:15 +00:00
Neil Brown
2349474ba6 Fixed the occam modules to work with the new Polyplate type-classes 2008-12-14 18:52:52 +00:00
Neil Brown
1141ecb472 Fixed the Rain modules to use the new Pass system/types 2008-12-14 18:35:39 +00:00
Neil Brown
d49c7fad4a Fixed all the modules in the backends directory to work with the new Pass system 2008-12-14 18:32:34 +00:00
Neil Brown
a0c58ae836 Adjusted all the remaining modules in the transformations directory to work with the new Pass system 2008-12-14 18:30:02 +00:00
Neil Brown
1d73b56988 Adjusted the PassList module to work with the adjusted Pass type synonym 2008-12-14 18:29:09 +00:00
Neil Brown
954664d238 Added some more type synonyms for checks and passes 2008-12-14 18:27:51 +00:00
Neil Brown
560b67de5e Added a missing case in showOccamM for A.Type 2008-12-14 18:26:10 +00:00
Neil Brown
f29d0993e9 Added a list replace function to the Utils module 2008-11-26 15:11:26 +00:00
Neil Brown
2b05480889 Renamed the listify methods to be shorter 2008-12-14 17:05:41 +00:00
Neil Brown
cdcbebd2ae Fixed the instances generated for Maps 2008-12-14 15:38:01 +00:00
Neil Brown
263dfd6fd3 Allowed the different instances for the Polyplate classes to be written out to separate files (to help GHC's memory usage down a bit) 2008-12-14 15:37:05 +00:00
Neil Brown
cd9b8462b4 Made Tock depend again on the BUILT_SOURCES (which I broke in an earlier patch) 2008-12-14 15:36:30 +00:00
Neil Brown
d24a984442 Fiddled with the PolyplateSpine class and added code to generate the instances 2008-12-09 16:18:06 +00:00
Neil Brown
189032e275 Fixed up the full traversal of the tree to allow specification of a default value 2008-12-09 11:20:39 +00:00
Neil Brown
a7f04a030c Added more stuff relating to the spine view in Polyplate, but now reconsidering its necessity 2008-12-05 16:48:16 +00:00
Neil Brown
bcbd18e5b7 Changed the build system, since GenNavAST now (indirectly, via CompState) relies on OrdAST existing 2008-12-03 17:39:04 +00:00
Neil Brown
24a7b7aba8 Changed GenNavAST to also generate instances for CompState 2008-12-03 17:37:29 +00:00
Neil Brown
c83c383181 Fixed the GenClassPerType option to actually generate the forwarding instance from PolyplateM to the type-specific class 2008-12-03 17:36:40 +00:00
Neil Brown
360b076be9 Made genMapInstance and genSetInstance generate instances for the directly contained types 2008-12-03 17:30:57 +00:00
Neil Brown
29b79000f1 Made the instance generation obey the settings for GenClassOption 2008-12-03 17:19:16 +00:00
Neil Brown
24364c0cbe Pulled out the final bits of the instance generation that I want to make configurable 2008-12-03 17:07:43 +00:00
Neil Brown
7ee2475363 Pulled out more commonality, this time relating to contexts 2008-12-03 16:55:48 +00:00
Neil Brown
14d6dec1d1 Pulled out some of the details of generating a Polyplate instance into a helper function, to help make it easier to configure 2008-12-03 16:41:01 +00:00
Neil Brown
624e10b9ff Added a special case for sets, and some documentation explaining why this mechanism is needed 2008-12-03 15:42:52 +00:00
Neil Brown
85f917df2f Added a mechanism for having special cases for awkward types (such as Map) during the instance generation 2008-12-03 15:32:43 +00:00
Neil Brown
890e7ea9a6 Fixed many of the modules to use the new Polyplate-based Traversal system 2008-12-02 18:06:10 +00:00
Neil Brown
a3bcb32937 Switched the Pass and Traversal modules over to Polyplate, breaking most of the other modules 2008-12-02 17:33:55 +00:00
Neil Brown
e78a30c231 Added an applyBottomUp function (non-monadic) 2008-12-02 17:17:22 +00:00
Neil Brown
6a0529a9ce Took out the pregen sources from tock_SOURCES_hs, which I think would have caused them to be packaged (don't think we would want to, or at least we don't need to) 2008-12-02 17:06:39 +00:00
Neil Brown
4b9d186a65 Added the parameter to increase the context stack (for working with polyplate) 2008-12-02 17:06:17 +00:00
Neil Brown
44026e985a Adjusted the clean rule to fit with the new Polyplate modules 2008-12-02 17:06:00 +00:00
Neil Brown
4fa324cbfe Changed polyplate so that users should always supply their own headers (since it must have any appropriate imports) 2008-12-02 16:04:04 +00:00
Neil Brown
69e5d1d20d Reworked GenInstances, and wired in the option relating to overlapping instances 2008-12-02 15:50:38 +00:00
Neil Brown
c9100fb467 Added the first version of GenInstances (taken from my latest improvements) and switched GenNavAST to use it, but it needs tidying up and to take account of the options it is given 2008-12-02 15:16:22 +00:00