Mirror of http://offog.org/git/tock.git . Tock (translator from occam to C from Kent) is a Haskell-based compiler for occam and related languages.
Go to file
Neil Brown d514d40943 Changed the Rain parser to use the new LexRain tokens
This is similar (but not identical) to the change Adam was doing at the same type for occam.
I think the main difference is that rather than returning () from parsing a reserved word,
I return Meta so that you can easily write rules like:
  do { m <- sSemiColon ; return $ A.Skip m}

The tests have also been updated to use the new parser, and fail on either a lexing or a
parsing error.
2007-08-22 09:41:08 +00:00
testcases Move assignment simplification into a pass. 2007-08-22 19:55:52 +00:00
AnalyseAsm.hs Refactor AnalyseAsm to use a state monad. 2007-08-22 00:11:20 +00:00
AST.hs Some Haddock tweaks. 2007-08-22 01:43:52 +00:00
CompState.hs Move assignment simplification into a pass. 2007-08-22 19:55:52 +00:00
COPYING Add licensing information. 2007-08-18 20:42:11 +00:00
COPYING.LIB Add licensing information. 2007-08-18 20:42:11 +00:00
Errors.hs Add licensing information. 2007-08-18 20:42:11 +00:00
EvalConstants.hs Make underlyingType merge array dimensions. 2007-08-22 15:00:54 +00:00
EvalLiterals.hs Added a signed 8-bit type and unsigned 16-,32- and 64-bit types to the AST, adjusting all other code accordingly 2007-08-21 12:43:00 +00:00
GenerateC.hs Move assignment simplification into a pass. 2007-08-22 19:55:52 +00:00
GenerateCPPCSP.hs Added a signed 8-bit type and unsigned 16-,32- and 64-bit types to the AST, adjusting all other code accordingly 2007-08-21 12:43:00 +00:00
Intrinsics.hs Add licensing information. 2007-08-18 20:42:11 +00:00
kroc-wrapper-c.c Add licensing information. 2007-08-18 20:42:11 +00:00
kroc-wrapper.occ Add licensing information. 2007-08-18 20:42:11 +00:00
LANGUAGE Give tock its own repo -- i.e. remove everything else and move tock up 2007-07-16 21:48:55 +00:00
LexOccam.x Make the lexer only recognise known preprocessor directives. 2007-08-21 21:12:44 +00:00
LexRain.x Added LexRain, based heavily on (a slightly older version of) LexOccam 2007-08-22 09:37:27 +00:00
Main.hs Rename Parse to ParseOccam. 2007-08-22 01:59:51 +00:00
Makefile Added LexRain, based heavily on (a slightly older version of) LexOccam 2007-08-22 09:37:27 +00:00
Metadata.hs Add licensing information. 2007-08-18 20:42:11 +00:00
ParseOccam.hs Apply unique naming to unscoped names too. 2007-08-22 16:41:03 +00:00
Pass.hs Use show rather than pshow on CompState. 2007-08-22 19:18:26 +00:00
PassTest.hs Added a signed 8-bit type and unsigned 16-,32- and 64-bit types to the AST, adjusting all other code accordingly 2007-08-21 12:43:00 +00:00
Pattern.hs Added better Eq implementation for Pattern, taking account of the poor Eq implementation of Constr 2007-08-21 18:31:39 +00:00
PreprocessOccam.hs Rework the parser to use the new lexer. 2007-08-21 20:44:15 +00:00
PrettyShow.hs Added better pretty-printing for list Patterns, with a special case for strings that prints them out nicely 2007-08-20 21:35:19 +00:00
RainParse.hs Changed the Rain parser to use the new LexRain tokens 2007-08-22 09:41:08 +00:00
RainParseTest.hs Changed the Rain parser to use the new LexRain tokens 2007-08-22 09:41:08 +00:00
RainPasses.hs Rain: moved the resolution of int (to a 64-bit signed integer) out to a pass 2007-08-21 11:00:41 +00:00
RainPassTest.hs Moved TreeUtil.Pattern to its own module (Pattern), which allowed me to show the pshowPattern function to be part of the PrettyShow.pshow function 2007-08-20 21:01:06 +00:00
SimplifyExprs.hs Added a PassTest file intended for tests of the occam passes, and put in it a test for the functions-to-procs pass 2007-08-20 17:23:20 +00:00
SimplifyProcs.hs Move assignment simplification into a pass. 2007-08-22 19:55:52 +00:00
SimplifyTypes.hs Add licensing information. 2007-08-18 20:42:11 +00:00
StructureOccam.hs Lex multiline strings as multiple tokens. 2007-08-21 20:01:46 +00:00
SYNTAX Give tock its own repo -- i.e. remove everything else and move tock up 2007-07-16 21:48:55 +00:00
TestMain.hs Added a PassTest file intended for tests of the occam passes, and put in it a test for the functions-to-procs pass 2007-08-20 17:23:20 +00:00
TestUtil.hs Added some helper functions for creating simple Patterns to TestUtil 2007-08-20 21:53:24 +00:00
TLP.hs Added direction specifiers and further attributes (such as whether the channel is shared) to the Chan type in the AST 2007-08-21 10:35:18 +00:00
tock_support_cppcsp.h Add licensing information. 2007-08-18 20:42:11 +00:00
tock_support.h Add licensing information. 2007-08-18 20:42:11 +00:00
TODO Give tock its own repo -- i.e. remove everything else and move tock up 2007-07-16 21:48:55 +00:00
TreeUtil.hs Added a useful function to TreeUtil that allows you to replace a given sub-pattern of a Pattern with the DontCare value 2007-08-21 18:32:25 +00:00
Types.hs Make underlyingType merge array dimensions. 2007-08-22 15:00:54 +00:00
Unnest.hs Add licensing information. 2007-08-18 20:42:11 +00:00
UsageCheck.hs Add licensing information. 2007-08-18 20:42:11 +00:00
UsageCheckTest.hs Add licensing information. 2007-08-18 20:42:11 +00:00
Utils.hs Rework the parser to use the new lexer. 2007-08-21 20:44:15 +00:00