Jäsentämisen strategiat

Abstract

Ohjelmistokääntäjät lukeutuvat kaiken nykyaikaisen ohjelmoinnin kivijalkoihin. Osa ohjelmointikielistä toimii siten, että ne käännetään annetulta koodikieleltä konekieleksi. Toisaalta jotkut ohjelmointikielet toimivat siten, että lähdekoodia lukee reaaliaikaisesti ohjelmistotulkki, joka itse on konekieleksi käännetty ohjelmisto. Lisäksi on vielä ohjelmointikieliä, joita käännetään jonkinlaiseksi välikieleksi, jota sitten tulkataan konekieleksi. Hyvin harva kuitenkaan on täysin perillä siitä, miten kääntäjät toimivat. Tässä työssä tutkitaan yleisimpiä menetelmiä eräästä tietystä kääntämisen vaiheesta: jäsentämisestä. On haluttu tietää, miten kääntäjät pilkkovat koodia, miten käsittelevät sitä ja millaiseen muotoon se jäsennellään. Työssä kuvaillaan ensin yksityiskohtaisesti jäsentimien toiminnan periaatteita, teoriaa ja historiaa, minkä jälkeen perehdytään kaikkein eniten käytetyn jäsentimen toimintaan. Aihetta tutkiessa saatiin selville, että jäsentimet jakaantuvat karkeasti kahteen kategoriaan: ylhäältä-alas ja alhaalta-ylös -tyyppeihin. Kumpikin näistä jakautuu edelleen alatyyppeihin, jotka ovat toinen toistaan tehokkaampia. Ne ovat myös entistä monimutkaisempia ja soveltuvat yhä laajemman ohjelmointikielten kirjon kääntämiseen. Havaittiin, että jäsentimien suunnittelussa on vankka tiede, joka on muodostunut purkamaan korkeamman tason ohjelmoinnin abstraktioita ja vastaamaan asiaan liittyviin teknisiin haasteisiin. Kaikkein kehittyneimmissä jäsentimissä käytetään matemaattisloogisia merkintätapoja kuvailemaan jäsentimien toimintaa

    Similar works