Build a parser/front end for a programming language X (X may be Scheme, Python or any other language we may agree on) using parser generating system Y (for instance, the UU-parser combinators or the Java Cup library). Generally a Haskell implementation
is preferred. In addition to writing and testing a parser, I also expect you to develop a good abstract data type for the language.
In the case of big languages, we can also focus on a smaller part.
Some concrete examples listed in descending order of preference (on my part):
- Java source files using the Parser combinators [sold]
- Java class files using the Parser combinators
- Python using the Parser combinators
- PHP using the Parser combinators
- Perl using the Parser combinators
The Java parsers can also be made in tandem (two people working to some extent together).
Because of the considerable overlap between programming language in general this is also
possible for other combinations.
Contact: Jurriaan Hage