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 |
|
Neil Brown
|
01fff6e617
|
Realised listify should return a list, and added depth-first and breadth-first versions
|
2008-12-02 14:18:11 +00:00 |
|
Neil Brown
|
b6176ee615
|
Added functions and schemes related to the new query functions
|
2008-12-02 14:10:43 +00:00 |
|
Neil Brown
|
a2063da839
|
Added some thoughts (and a new type-class) concerning possible uses of Polyplate
|
2008-12-02 13:49:36 +00:00 |
|
Neil Brown
|
82cae7691a
|
Fixed the remaining missing functions to get the Schemes compiling
|
2008-12-02 13:13:54 +00:00 |
|
Neil Brown
|
77251b842c
|
Added the Polyplate modules to the Tock build system and fixed various errors
|
2008-12-02 13:08:38 +00:00 |
|
Neil Brown
|
8b28fee077
|
Started a module (Schemes) containing various Polyplate traversal schemes
|
2008-12-02 12:59:17 +00:00 |
|
Neil Brown
|
df2b85ea27
|
Moved Polyplate into a sensible package (based on the Uniplate module names)
|
2008-12-02 12:26:12 +00:00 |
|
Neil Brown
|
e7231d8959
|
Added the first version of the standalone Polyplate module
|
2008-12-02 12:24:17 +00:00 |
|
Neil Brown
|
9403f4d68b
|
Filled in more expressions and corrected the generation of byte literals by borrowing code from the C backend
|
2008-11-27 09:25:34 +00:00 |
|
Neil Brown
|
ce86ec2337
|
Changed genMissing so that it generates a run-time error in the generated code
|
2008-11-27 09:25:07 +00:00 |
|
Neil Brown
|
e79ccf1b46
|
Fixed it so that names beginning with an upper-case letter are prefixed by an underscore in the CHP backend
|
2008-11-27 09:24:31 +00:00 |
|
Neil Brown
|
769ed4f3ca
|
Filled in a little more of the CHP backend
|
2008-11-26 20:39:51 +00:00 |
|
Neil Brown
|
70d7b941cc
|
Added support for more types and some expressions (mainly array stuff)
|
2008-11-26 18:47:32 +00:00 |
|