You are here: Projects
Projects
Software
Writing
- 2010/06 Generic Selections of Subexpressions. My Masters thesis, exploring how to generically insert position information in datatypes, and building functions that work on these annotated datatypes. Examples include parser combinators that automatically record and insert position information at the right places, and catamorphisms that automatically couple errors with locations. See also the introductory journal entry.
- 2008/05 Building a Hybrid Editor. Manipulating an AST produced by a parser is usually reasonably straightforward. However, when
converting the AST back to source code, comments and layout often get lost. Requiring that comments
and layout are maintained as much as possible during mutations on the AST proves an interesting
challenge, and its consequences on the design of the parser and AST are explored here.
- 2007/04 Warioland Bug Guide, a thorough guide listing all the bugs and features of the '90s Nintendo GameBoy game Super Mario Land 3: Warioland.
- 2007/03 Braga 2006, a report of my half-year stay at the Universidade do Minho in Braga, Portugal.
- 2006/11 Princesa Maxima (PDF), slides for a presentation for the Portuguese language course at the Universidade do Minho, Braga.
- 2006/07 Creating Consciousness (PDF), a paper written for my Philosophy of Computer Science course.
- 2005/11 Dynamic Programming (PDF), a paper written for my Teaching Computer Science course.
- 2005/10 Het genereren van willekeur (PDF), a Dutch newspaper-style article about generating randomness, written for my Teaching Computer Science course and targetted at a young audience.
- 2004/09 Majesty Review, a review of the fantasy kingdom sim.