-
Notifications
You must be signed in to change notification settings - Fork 0
The laziest compiler ever
License
raeez/decaf
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
BUILD SYSTEM
------------
In order to build, we're using the cabal build system;
you should have the latest version of the Haskell platform installed.
from the root directory, run:
cabal configure
cabal build
cabal install
And cabal will prepare, build and install the project binaries into ~/.cabal/bin.
We suggest adding ~/.cabal.bin to your PATH environment variable.
BINARIES
--------
scanner -- utilize as 'scanner x', where x is the file you'd like to scan.
scanner-repl -- utilize as in interactive REPL, to view the scanning of tokens in real-time
parser -- utilize as 'parser x', where x is the file you'd like to parse.
grapher -- utilize as 'grapher x', where x is the file you'd like to scan, parse and graph
the resulting AST. requires the graphviz binary 'dot' installed on your system,
(assuming it's on your PATH, else grapher fails) and outputs a 'outputfile.out.png',
as the visuazlization of the AST.
checker -- utilize as 'checker x', where x is the file you'd like to scan, parse and check for semantic errors.
DEBUG
-----
With exception of grapher, binaries output error messages if any errors are encountered,
otherwise they output nothing. If the '-debug' flag is supplied, then the binaries always
output debug output to stdout.
DIRECTORIES
-----------
dist/
compiled binaries, documentation etc.
src/
source for binaries + utilities
Decaf/
compiler codebase
testsuite/
tests
viz/
visualizations of graphs we've been working with
About
The laziest compiler ever
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published