Compilers

Alex Aiken

Other Materials

Other Materials

A list of other resources that you might find helpful.

  • Version control and configuration management:
    • SVN, git, Mercurial, and CVS are all good choices for source-control systems. Each one has extensive documentation on it's website. Useful tutorials can also usually be found with a web search.

  • C++ and UNIX:
    • Extensive C/C++ documentation can be found here. Further documentation and tutorials can be found through Google.
    • Quick guide to UNIX development tools (one of the many useful documents available in Nick Parlante's ever-growing CS library)

  • Help with the gdb debugger:

  • References on lex & yacc:
  • lex is the original lexical scanner developed by Lesk and Schmidt; Paxson's improved version is flex. Similarly, yacc is Johnson and Sethi's original parser; bison is the GNU-equivalent written by Corbett and Stallman. Both are designed to be upward-compatible with the original while adding extensions and improvements.
    • Original documentation by the authors of the tools themselves. These papers are quite readable and serve as an excellent introduction for familiarizing yourself with the tools.
    • Man pages are available from command line, e.g., man lex. They can also usually be found here.
    • GNU's online documentation (full manuals, long, but very complete)
    • The lex & yacc page from Combo.org.
    • An article from the Linux Journal singing the praises of lex & yacc.

  • References on JLex and Java_cup:

  • References on MIPS & SPIM:

  • Just for fun:
    • A list of funny error messages from the old MPW C compiler.
    • A translator for Latin to Perl (and you thought there was no practical use for what you learned in Compilers!).