Neil Brown
d2260e1736
Added a new function to Utils, and made one of the existing functions simpler and more efficient
2009-04-14 12:07:12 +00:00
Neil Brown
1a3df54ee7
Fixed SKIP not being allowed as a guard without a precondition
2009-04-14 11:13:00 +00:00
Neil Brown
71267f12d5
Fixed direction specifiers in the LHS of a RETYPES confusing the parser
2009-04-14 11:12:44 +00:00
Neil Brown
f257100ba8
Added support for the SETPRI intrinsic
2009-04-14 11:05:27 +00:00
Neil Brown
50662fa6f0
Added support for passing preprocessor defines from the command-line
2009-04-14 10:48:26 +00:00
Neil Brown
bf8c87b873
Fixed the type-checking so that user-defined types that are mobile type-check properly
2009-04-13 22:41:07 +00:00
Neil Brown
c2b31d3c78
Fixed the listify function, especially for the C backend, so that the ordering is what we want, regardless of whether it makes sense
2009-04-13 22:40:25 +00:00
Neil Brown
d36503e15d
Fixed a couple of problems in the backend with channel bundles
2009-04-13 20:37:21 +00:00
Neil Brown
f2c4ada01b
Removed PolyplateSpine in favour of using PolyplateM (and the State monad) everywhere
2009-04-13 20:37:14 +00:00
Neil Brown
04974ae470
Fixed various typing problems involving channel bundles
2009-04-13 19:20:15 +00:00
Neil Brown
e409b15b58
Merged latest patches from trunk into Polyplate
2009-04-13 16:58:07 +00:00
Neil Brown
9069282ca2
Added support to the backend for FORK and FORKING
2009-04-13 14:58:07 +00:00
Neil Brown
c9b4af3d7d
Added a pass that works out which FORK statement corresponds to which FORKING block (and adds a FORKING just inside the main PROC)
2009-04-13 14:57:18 +00:00
Neil Brown
d4a119ecf4
Added lexing, parsing and type-checking support for FORKING and FORK
2009-04-13 14:57:03 +00:00
Neil Brown
b21940585d
Added a few FORKING-related entries to the AST
2009-04-13 14:56:19 +00:00
Neil Brown
80dac0492b
Fixed a bug where specifications were being misinterpreted inside IFs during parsing
...
I find it surprising this bug had been in there so long. It was interpreting "INT i" as an expression in an IF, then couldn't resolve i, rather than backing out and correctly parsing the whole line, "INT i:" as a specification.
2009-04-12 16:26:54 +00:00
Neil Brown
8f943c9ac1
Changed freeNamesIn to use PolyplateM rather than PolyplateSpine
...
This sliced the time on part of tocktest to 5% of the previous time, which rather suggests that I should do away with PolyplateSpine.
2009-04-11 17:53:33 +00:00
Neil Brown
c8b724d2be
Merged the latest set of changes from the trunk into the Polyplate branch
...
I also added the import list to all the Data.Generics imports in the tests (as I did for the other modules recently)
2009-04-10 20:38:29 +00:00
Neil Brown
8f767ff0d4
Made all the imports of Data.Generics have an import list
...
This makes sure that we catch all leftover instances of using SYB to do generic operations that we should be using Polyplate for instead. Most modules should only import Data, and possibly Typeable.
2009-04-09 15:36:37 +00:00
Neil Brown
e61a23855a
Fixed all the conflicts while merging into the Polyplate branch
2009-04-09 11:01:39 +00:00
Neil Brown
85ed6b8fbe
Discovered that I'd googled to some outdated docs, and fixed the last comment change
2009-02-11 16:50:47 +00:00
Neil Brown
399433a18a
Added a note to the comments in GenInstances
2009-02-11 16:45:10 +00:00
Neil Brown
ae74752336
Fixed a bug introduced in the Polyplate merging where findDir wasn't working properly
2009-02-11 16:02:56 +00:00
Neil Brown
a3d1e952f4
Corrected my documentation, after trying to actually use it
2009-02-11 14:47:45 +00:00
Neil Brown
b6b4188b7c
More Polyplate merging in SimplifyAbbrevs
2009-02-11 13:30:54 +00:00
Neil Brown
0d5299b10f
Added some documentation for the Polyplate library
2009-02-11 13:26:11 +00:00
Neil Brown
9294febd6f
Converted addDirections to the Polyplate traversals, and fixed inferTypes to work in Polyplate (more merging from trunk)
2009-02-11 12:17:28 +00:00
Neil Brown
a72b01ff02
Merged the latest changes from my usage checking into the polyplate branch
2009-02-10 17:11:24 +00:00
Neil Brown
c69ea8815d
Merged in the latest changes from the trunk into the Polyplate branch
2009-02-03 13:14:07 +00:00
Neil Brown
effa8189b1
Disabled the pass that checks for unused variables for now as it runs too slowly
2009-01-28 15:48:31 +00:00
Neil Brown
5a10e94c6a
Fixed various conflicts between the Polyplate branch and the latest changes in the trunk
2009-01-28 15:48:08 +00:00
Neil Brown
3950a6360d
Twiddled the polyplate cabal file to work with GHC 6.10
2009-01-13 16:13:59 +00:00
Neil Brown
7066aee458
Added a simple Setup file to use to run the Polyplate cabal script
2009-01-13 15:44:15 +00:00
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