Laajennettava ohjelmointikieli
Nyrhinen, Esa (2012)
Nyrhinen, Esa
Rovaniemen ammattikorkeakoulu Lapin ammattikorkeakoulu
2012
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201205219164
https://urn.fi/URN:NBN:fi:amk-201205219164
Tiivistelmä
Opinnäytetyössä käsitellään uutta laajennettavaa ohjelmointikieltä nimeltään Phase, joka yhdistää ominaisuuksia FORTH- ja LISP-kieliperheistä prototyyppipohjaiseen oliomalliin. Laajennettavuus tarkoittaa sitä, että kieli itse tarjoaa välineet laajentamisekseen esimerkiksi uusien ohjausrakenteiden muodossa.
Työn tavoitteena oli luoda yksinkertainen laajennettava ohjelmointikieli tekijän omaa käyttöä varten, arvioida se ja dokumentoida sen suunnittelu- ja toteutusprosessi.
Työssä käydään läpi kielen synnyn taustalla olevat ideat, toimintamalli, eri kielillä toteutetut prototyypit, miten kieltä voi käyttää ja lopuksi arvioidaan kieltä suhteessa muihin ohjelmointikieliin ja ohjelmointikielten yleisten arviointiperusteiden näkökulmasta.
Ohjelmointikielen prototyyppitoteutuksen luominen onnistui ja itse toteutus osoittautui mielenkiintoiseksi ympäristöksi metaohjelmointiin liittyville kokeiluille. Luotu ohjelmointikieli on vielä monessa suhteessa keskeneräinen ja jatkokehityksen tarpeessa.
Työ esittää vaihtoehtoisen lähestymistavan ohjelmointikielen toteutukseen ja voi auttaa lukijaansa paremmin ymmärtämään ohjelmointikielten suunnittelun ongelmia.
Työn tavoitteena oli luoda yksinkertainen laajennettava ohjelmointikieli tekijän omaa käyttöä varten, arvioida se ja dokumentoida sen suunnittelu- ja toteutusprosessi.
Työssä käydään läpi kielen synnyn taustalla olevat ideat, toimintamalli, eri kielillä toteutetut prototyypit, miten kieltä voi käyttää ja lopuksi arvioidaan kieltä suhteessa muihin ohjelmointikieliin ja ohjelmointikielten yleisten arviointiperusteiden näkökulmasta.
Ohjelmointikielen prototyyppitoteutuksen luominen onnistui ja itse toteutus osoittautui mielenkiintoiseksi ympäristöksi metaohjelmointiin liittyville kokeiluille. Luotu ohjelmointikieli on vielä monessa suhteessa keskeneräinen ja jatkokehityksen tarpeessa.
Työ esittää vaihtoehtoisen lähestymistavan ohjelmointikielen toteutukseen ja voi auttaa lukijaansa paremmin ymmärtämään ohjelmointikielten suunnittelun ongelmia.