p5c is a full iso level 1 standard pascal compiler with conformant arrays, function parameters, arbitrary set sizes, and many other features.
It uses gnu c as intermediate code rather than p-code, so it is
Why Pascal?
Here's a quick refresh on the pascal language
p5c is simple enough for one person to understand, so it ideal for hobby compiler projects.
On the other hand, gcc produces some of the most highly optimised code around, so p5c programs will run extremely quickly.
It is closely based on the p5 compiler, which is a freely available and well documented ISO compliant pascal compiler.
the pascal language
using the p5c compiler
p5x - pascal extensions
implementation notes
Wiki: The Pascal Language
Wiki: using the p5c compiler
Wiki: using the p5x compiler