Webspot Pieter van Ede

Grammatica's en ontleden

In dit vak zijn grammatica's en hun eigenschappen, zoals onder meer LL behandeld. Tevens zijn ook technieken voor parserbouw behandeld, zowel met behulp van ANTLR en met parser-combinatoren in Haskell.

ANTLR

In deze opdracht moesten we in Java, met behulp van de ANTLR parser-generator, een parser bouwen die Haskell datadefinities inleest en de bij deze definities behorende fold-functies genereert. Deze opdracht heb ik samen gedaan met Chris Eidhof.

Download
Beschrijving van de opdracht
Download
Source van de opdracht

Codegeneratie

Bij deze opdracht moest in Haskell een mini-compiler worden geschreven, die eenvoudige Java-code kan compileren naar SSM-code. SSM is een in Java geschreven nep-processor, die werkt met code vergelijkbaar met Assembler. Deze opdracht heb ik samen gedaan met Chris Eidhof.

Download
Beschrijving van de opdracht
Download
Source van de opdracht De SSM interpreter wordt in dit bestand meegeleverd, wel heeft u een gewone Haskell interpreter nodig. Heeft u geen interpreter, dan is de Glasgow Haskell Compiler, ofwel GHC aan te raden.

Parser Combinatoren

Bij deze opdracht moesten we weer een parser schrijven die bij Haskell data-definities foldfuncties genereert, alleen nu moest ook de parser in Haskell geschreven worden. Deze opdracht heb ik samen gedaan met Chris Eidhof.

Download
Beschrijving van de opdracht
Download
Source van de opdracht U kan dit programma met een gewone Haskell interpreter starten. Heeft u geen interpreter, dan is de Glasgow Haskell Compiler, ofwel GHC aan te raden.