Skip to content

raeez/decaf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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

No packages published