Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
CSc 435/583A - Resources
[go: Go Back, main page]

Compiler Tools

SableCC
[HTML] Etienne Gagnon's Thesis (the de facto manual)
[Source] Vim Syntax Highlighting for SableCC 3.x

Other Java Tools

JavaCC / Java Tree Builder
JLex / CUP
ANTLR

C/C++ Compilers

Flex ([HTML] Manual)
Bison ([HTML] Manual)

Languages Used in CSc 435

FunJava

[HTML] Language Reference
[JAR] FunJava Compile Client
Uses a server to convert FunJava to Piglet, Spiglet and Kanga. Interprets the various intermediate forms.
Run as 'java -jar compile_client-2.0.jar -gui'
[ZIP] FunJava Example Programs
A suite of programs that use the various features of FunJava. Useful for testing the correctness of translation to various target languages (Piglet, Spiglet, etc.).

Piglet

[PDF] Piglet Code Patterns
[JAR] Piglet Interpreter
Check and interpret a Piglet program.
For usage instructions, run 'java -jar pg-interpreter.jar'

Spiglet

[PDF] Spiglet Explanation
[PDF] Further Explanation on Generating Spiglet

Kanga

[PDF] Kanga Specification
[ZIP] Spiglet Pretty-Printer and Interference Graph Generator

MIPS

[PDF] Introduction to the MIPS32™ Architecture
[PDF] The MIPS32™ Instruction Set
[HTML] SPIM: A MIPS Simulator
[PDF] Assemblers, Linkers, and the SPIM Simulator

Programming

[HTML] Why Functional Programming Matters (J. Hughes)
[PDF] Reflect on the Visitor Design Pattern (J. Blosser)
[PDF] Iterated Register Coalescing (George & Appel)
A paper on register allocation which seems to be the basis for Chapter 11 in Appel.

Java

The Java Tutorial
Java™ Development Kit
Java 1.4 ([HTML] Documentation, [HTML] API)
Java 5 ([HTML] Documentation, [HTML] API, [HTML] New Features)
[HTML] Java Language Specification
[HTML] Java™ Virtual Machine Specification

Tools

Simple is good:
Vim Editor
TextPad Editor
Fancy is good:
Eclipse IDE
NetBeans IDE

Unix on Windows: Cygwin

Putting it together:
Ant ([HTML] Manual)
JUnit ([HTML] Documentation, [HTML] API)

Research

Your educators: Nigel Horspool, Andrew Appel, Jens Palsberg

ACM's SIGPLAN, SIGSOFT

McGill's Sable Research Group

The Memory Management Reference

The iburg tree parser generator

^ top | home "/>

Updated: 2004-11-15 Maintained by: Rhodes Brown | Comments to: csc435 at csc.uvic.ca
Valid XHTML 1.0!