Taddeus Kroes
|
3403c4a3fc
Formatted all source code to 2 spaces as tab, and some more prettifications
|
12 lat temu |
Taddeus Kroes
|
7c9b5cf1af
Added interface files for all modules, moved command-line arguments to globals.ml, made types.ml an .mli file
|
12 lat temu |
Taddeus Kroes
|
b418c7c589
Generated array dimension names are now unique to avoid weird error messages when array definitions have name clashes
|
12 lat temu |
Taddeus Kroes
|
60a3a48b60
Scalar array initialisation now supports non-constant values, which are evaluated only once
|
12 lat temu |
Taddeus Kroes
|
e92fd83385
Added single-time evaluation for array constant variables ad array dimensions
|
12 lat temu |
Taddeus Kroes
|
6ba4edeec6
Typo
|
12 lat temu |
Taddeus Kroes
|
f979c1faf4
Changed the way array types are represented, and cleaned up a lot of code in the process
|
12 lat temu |
Taddeus Kroes
|
ae20d87ad4
Re-introduced DimDec node to get array dimension declarations to work properly, and rewrote a bunch of code to make it actually work...
|
12 lat temu |
Taddeus Kroes
|
fc5a38d30a
Re-wrote main file: added a centralized list of phases and generalized logging format + added -upto option
|
12 lat temu |
Taddeus Kroes
|
6a7d2a1dd7
Fixed bug where desugaring would not traverse into local functions properly
|
12 lat temu |
Taddeus Kroes
|
4225c53427
Finished first version of assembly phase
|
12 lat temu |
Taddeus Kroes
|
90c7e2b83d
Worked on assembly generation, added -noopt argument, tweaked verbority level
|
12 lat temu |
Taddeus Kroes
|
21fc065c8f
Changed constant node types, added VarDecs|LocalFuns wrappers, implemented first steps of assembler
|
12 lat temu |
Taddeus Kroes
|
45ccce6001
Renamed ast.ml to types.ml
|
12 lat temu |
Taddeus Kroes
|
838389b893
Changed the way nodes are annotated to something more moldable, in the process changing/bugfixing pretty much everything
|
12 lat temu |
Taddeus Kroes
|
2084f76312
Added transformation of while-loops to do-while loops
|
12 lat temu |
Taddeus Kroes
|
669f2c21f3
Added a rudimentary form of constant propagation for reducing for-loop complexity, improved flatten_blocks
|
12 lat temu |
Taddeus Kroes
|
bd304ed3a4
Implemented external variables using getters and setters, some general changes & fixes in other phases for compliance
|
12 lat temu |
Taddeus Kroes
|
180700fd3e
Moved command-line arguments to global record
|
12 lat temu |
Taddeus Kroes
|
1cdc10625d
Implemented array dimension reduction, generalized Array type, more bugfixes in other phases
|
12 lat temu |
Taddeus Kroes
|
8ff21e8694
Turns out a TODO list issue was already fixed implicitly
|
12 lat temu |
Taddeus Kroes
|
2afacac5e5
Implemented constant array initialisation
|
12 lat temu |
Taddeus Kroes
|
f282d9b512
Implemented scalar array initialisation
|
12 lat temu |
Taddeus Kroes
|
6a77ae3cca
Fixed issue where nested for-loop counters would not be replaced properly
|
12 lat temu |
Taddeus Kroes
|
74d0ad3cc1
Finished type checking & content analysis
|
12 lat temu |
Taddeus Kroes
|
96ecd75efb
Implemented most of typechecking, some bugfixes in other phases
|
12 lat temu |
Taddeus Kroes
|
d74b3bcded
Mostly finished desugaring and context analysis, added some utils, general bugfixes, started on array dimension reduction
|
12 lat temu |
Taddeus Kroes
|
0e0dd26f30
Generalized error printing and applied it in context analysis
|
12 lat temu |
Taddeus Kroes
|
478237b452
Added item to TODO list & comment cleanup
|
12 lat temu |
Taddeus Kroes
|
1c3447e39e
Implemented transformation of for-loops to while-loops
|
12 lat temu |