Teoriasta käytäntöön: Lambdakalkyylitulkin suunnittelu ja toteutus Haskellilla
Moilanen, Elmo (2026)
Moilanen, Elmo
2026
Tieto- ja sähkötekniikan kandidaattiohjelma - Bachelor's Programme in Computing and Electrical Engineering
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
Hyväksymispäivämäärä
2026-09-10
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202609099660
https://urn.fi/URN:NBN:fi:tuni-202609099660
Tiivistelmä
Tässä kandidaatintutkielmassa suunnitellaan ja toteutetaan tyypittömän lambdakalkyylin tulkki puhtaasti funktionaalisella Haskell-ohjelmointikielellä. Lisäksi tutkielmassa perehdytään erityisesti lambdakalkyylin ja evaluoinnin teoriaan. Työn tavoitteena on tarkastella, miten Alonzo Churchin 1930-luvulla kehittämä formaalin laskennan malli voidaan siirtää teoriasta konkreettiseksi, toimivaksi ohjelmistoksi. Tutkimuskysymys kuuluu: ”Miten tyypitön lambdakalkyyli voidaan toteuttaa modernissa puhtaasti funktionaalisessa ohjelmointikielessä?” Toteutettu tulkki koostuu syntaksi-, jäsennys- ja evaluointikomponenteista sekä pääohjelmasta, joka mahdollistaa lambdakalkyylilausekkeiden interaktiivisen evaluoinnin komentorivillä.
Työ alkaa kirjallisuuskatsauksesta toteutuksen kannalta kriittisiin aiheisiin. Teoriaosuudessa käsitellään muun muassa lambdakalkyylin teoriaa, erilaisia evaluointistrategioita ja syntaksin määrittelyä. Tämän jälkeen työn painopiste siirtyy toteutuksen suunnitteluun ja implementointiin koodi-esimerkkeineen. Lopuksi reflektoidaan suunnittelupäätösten ja teknisten valintojen vaikutuksia tulkin toteutukseen ja toimintaan sekä käsitellään jatkokehitysideoita.
Työ alkaa kirjallisuuskatsauksesta toteutuksen kannalta kriittisiin aiheisiin. Teoriaosuudessa käsitellään muun muassa lambdakalkyylin teoriaa, erilaisia evaluointistrategioita ja syntaksin määrittelyä. Tämän jälkeen työn painopiste siirtyy toteutuksen suunnitteluun ja implementointiin koodi-esimerkkeineen. Lopuksi reflektoidaan suunnittelupäätösten ja teknisten valintojen vaikutuksia tulkin toteutukseen ja toimintaan sekä käsitellään jatkokehitysideoita.
Kokoelmat
- Kandidaatintutkielmat [11997]
