haku: @supervisor Tarhio, Jorma / yhteensä: 69
viite: 10 / 69
Tekijä: | Lehtonen, Sampsa |
Työn nimi: | SORVI: A new dynamically updateable interpreted programming language |
SORVI: Uusi dynaamisesti päivitettävä tulkattu ohjelmointikieli | |
Julkaisutyyppi: | Diplomityö |
Julkaisuvuosi: | 2010 |
Sivut: | (9) + 109 s. + liitt. 3 Kieli: eng |
Koulu/Laitos/Osasto: | Tietotekniikan laitos |
Oppiaine: | Ohjelmistotekniikka (T-106) |
Valvoja: | Tarhio, Jorma |
Ohjaaja: | |
OEVS: | Sähköinen arkistokappale on luettavissa Aalto Thesis Databasen kautta.
Ohje Digitaalisten opinnäytteiden lukeminen Aalto-yliopiston Harald Herlin -oppimiskeskuksen suljetussa verkossaOppimiskeskuksen suljetussa verkossa voi lukea sellaisia digitaalisia ja digitoituja opinnäytteitä, joille ei ole saatu julkaisulupaa avoimessa verkossa. Oppimiskeskuksen yhteystiedot ja aukioloajat: https://learningcentre.aalto.fi/fi/harald-herlin-oppimiskeskus/ Opinnäytteitä voi lukea Oppimiskeskuksen asiakaskoneilla, joita löytyy kaikista kerroksista.
Kirjautuminen asiakaskoneille
Opinnäytteen avaaminen
Opinnäytteen lukeminen
Opinnäytteen tulostus
|
Sijainti: | P1 Ark Aalto | Arkisto |
Avainsanat: | dynamic software updates coroutines bytecode virtual registers virtual machine compiles dynaaminen dhjelmanpäivitys vuorettelualiohjelmat tavukoodi virtuaalirekisteri virtuaalikone kääntäjä |
Tiivistelmä (fin): | Tässä työssä esittelemme SORVI:n, uuden ohjelmointikielen, joka on suunniteltu dynaamisesti päivitettäväksi. Perinteisesti halutessaan tehdä muutoksia jo käynnissä olevaan ohjelmaan ohjelmoijan on täytynyt ensin lopettaa, kääntää ja sitten uudelleenkäynnistää ohjelma. Vaikka on olemassa lukuisia kieliä, joita voidaan päivittää ajon aikana, useimmat niistä eivät mahdollista aktiivisen ohjelmakoodin päivittämistä tai ovat rajoittuneita ominaisuuksissaan. SORVI on staattisesti tyypitetty, olio-pohjainen kieli. Sen syntaksiin ovat vaikuttaneet suositut proseduraaliset olio-ohjelmointikielet kuten C++ ja Java. SORVI on myös suunniteltu peli-ohjelmointia silmällä pitäen, ja tätä varten kieleen on lisätty tuki vuorottelualiohjelmille ja matemaattisille vektoreille. Vaikka SORVI voidaan laskea oikeaksi ohjelmointikieleksi, on se tarkoitettu lähinnä komentosarjakieleksi ja on tarkoitettu integroitavaksi isäntäohjelmaan käyttäen SORVI:n natiivikielisidosjärjestelmää. Vaikka SORVI:n kehitys on edelleen käynnissä, on se täysin toiminnallinen ja sitä voidaan käyttää oikeissa sovelluksissa. Sen suorituskyky ei ole kummoinen, mutta tämän pitäisi riittää komentokielikäyttöön. Dynaaminen ohjelmanpäivitys SORVI:ssa on joustava: käynnissä olevaa ohjelmaa voidaan muokata mielensä mukaan, kunhan ohjelma kääntyy ja natiivikielisidokseen ei tule muutoksia. Päivitysmenetelmä on toteutettu käyttäen uudenlaisia funktioiden yhteensovittamis- ja rekisterikuvausalgoritmeja. |
Tiivistelmä (eng): | In this Thesis, we introduce SORVI, a new programming language that has been designed to be dynamically updateable. Traditionally, when programmers have wanted to make changes to a running program, the program needs to be shut down, compiled and started again. While there exists a number of languages that can be reloaded while the program is running, most of them don't allow updating code that is currently active or are limited in their functionality. SORVI is a statically typed, object-oriented language. Its syntax has been influenced by popular procedural object-oriented languages such as C++ and Java. SORVI is also designed in game programming in mind and to support this, coroutines and vector primitives have been integrated into the language. While SORVI can be considered as a full-blown programming language, it is meant to he used as a scripting language and to be integrated to a host application using the native binding facility found in SORVI. While SORVI is still work-in-progress, it is fully functional and can be used in real world applications. Its performance is negligible but should he enough for scripting purposes. The dynamic software updates in SORVI are flexible: a running program can he modified as one pleases, as long as it compiles and the native binding does not change. Update facility is implemented using a novel function matching and register mapping algorithms. |
ED: | 2010-08-27 |
INSSI tietueen numero: 40303
+ lisää koriin
INSSI