Java Programming Language
- Online tutorial: https://www.w3schools.com/java/
- Kathy Sierra, Bert Bates, Trisha Gee, “Head First Java: A Brain-Friendly Guide”, Third Edition.
- Herbert Schildt, “Java A Beginner’s Guide”, Eighth Edition.
Flex & Bison
- Flex manual: https://www.cs.virginia.edu/~cr4bd/flex-manual/
- More reference: See section 3.5.2 of the dragon book.
- Bison manual: https://www.gnu.org/software/bison/manual/
- “Flex & Bison”, by John Levine (O’Reilly, 2009), pdf
Java Compiler Compiler (JavaCC) is the most popular parser generator for use with Java applications.
- JavaCC home page: https://javacc.github.io/javacc/
JTB is a syntax tree builder to be used with the Java Compiler Compiler (JavaCC) parser generator.
- JTB home page: http://compilers.cs.ucla.edu/jtb/
You will be developing large programs with 100s of lines of code. It is a good idea to learn and use version control system to manage your code development. My recommendation is to learn Git version control system. Git is not essential for the course, but learning it would serve you well in the years to come.