A free java based pascal compiler based on the book: Writing Compilers and Interpreters: A Software Engineering Approach