summaryrefslogtreecommitdiff
path: root/src/Language/Fiddle/Compiler.hs
Commit message (Collapse)AuthorAge
* Add backend support and start implementing a C backend.oJosh Rahm2024-10-10
|
* CompilationPhases are categories.Josh Rahm2024-10-09
|
* Prepare code to make testing much easier.Josh Rahm2024-10-09
| | | | | | This is primarily done by making more things json and by instrumenting which stage in compilation to dump and others. This means I can make bash scripts for end to end testing.
* Implement qualification.Josh Rahm2024-10-05
| | | | | | | Big change. Implements qualification, which separates the qualification concerns from the ConsistencyCheck phase. I'm getting close to implementing a backend.
* Clean up warnings and remove unused files.Josh Rahm2024-10-03
|
* Add empty qualification stage.Josh Rahm2024-10-03
| | | | | This stage will be responsible for qualifying all types and attaching necessary metadata to make the job of later stages much easier.
* Another monolithic change. Not good git ettiquite.Josh Rahm2024-10-03
| | | | | Import statements are fully implemented including compiling to an interface file for faster compilations.
* Option parsing with optparse-applicativeJosh Rahm2024-09-28
|
* Add import resolution phase and also add a more abstractions aroundJosh Rahm2024-09-27
| | | | compliation phases.
* Add Stage3 compliation.Josh Rahm2024-08-24
| | | | | I think this is the last phase before sending the refined AST to the backend compiler to be processed.
* Fleshed out stage2 and made some big changes.Josh Rahm2024-08-21
| | | | | Delegated behavior of Compile monad to monad transformers MaybeT and RWS.
* Start working on Stage1 -> Stage2 re-assembler.Josh Rahm2023-01-15
|
* Crude compilation pipeline starting to take shape.Josh Rahm2023-01-09
| | | | | This simply does a Stage0 -> Stage1 conversion. Namely, parse the text, check for syntax errors, squeeze the resulting ast and ... that's it.
* Some more fleshing-out of the parser and better AST utils.Josh Rahm2022-12-18
|
* WIP: Basic parser implemented.Josh Rahm2022-12-17
The parser is completely untested and probably broken, but it's probably pretty close becasue it does typecheck. This is a Work-in-progress.