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.
![]() This touches an awful lot of code, but cgtest07/17 (arrays and retyping) pass. This is useful because there are going to be places in the future where we'll want to represent dimensions that are known at runtime but not at compile time -- for example, mobile allocations, or dynamically-sized arrays. It simplifies the code in a number of places. However, we do now need to be careful that expressions containing variables do not leak into the State, since they won't be affected by later passes. Two caveats (marked as FIXMEs in the source): - Retypes checking in the occam parser is disabled, since the plan is to move it out to a pass anyway. - There's some (now very obvious) duplication, particularly in the backend, of bits of code that construct expressions for the total size of an array (either in bytes or elements); this should be moved to a couple of helper functions that everything can use. |
||
---|---|---|
backends | ||
checks | ||
common | ||
data | ||
docextra | ||
flow | ||
frontends | ||
pass | ||
support | ||
testcases | ||
transformations | ||
AUTHORS | ||
cgtests.mk | ||
ChangeLog | ||
compile-cgtests | ||
configure.ac | ||
COPYING | ||
COPYING.LIB | ||
GenOrdAST.hs | ||
GenTagAST.hs | ||
LANGUAGE | ||
Main.hs | ||
Makefile.am | ||
NEWS | ||
README | ||
SYNTAX | ||
TestMain.hs | ||
TODO |