search query: @keyword muuttujien roolit / total: 2
reference: 1 / 2
« previous | next »
Author:Lampinen, Sakari
Title:Detecting roles of variables in an intermediate language
Publication type:Master's thesis
Publication year:2010
Pages:[9] + 52 + [11]      Language:   eng
Department/School:Informaatio- ja luonnontieteiden tiedekunta
Main subject:Ohjelmistotekniikka   (T-106)
Supervisor:Korhonen, Ari
Instructor:Taherkhani, Ahmad
OEVS:
Electronic archive copy is available via Aalto Thesis Database.
Instructions

Reading digital theses in the closed network of the Aalto University Harald Herlin Learning Centre

In the closed network of Learning Centre you can read digital and digitized theses not available in the open network.

The Learning Centre contact details and opening hours: https://learningcentre.aalto.fi/en/harald-herlin-learning-centre/

You can read theses on the Learning Centre customer computers, which are available on all floors.

Logging on to the customer computers

  • Aalto University staff members log on to the customer computer using the Aalto username and password.
  • Other customers log on using a shared username and password.

Opening a thesis

  • On the desktop of the customer computers, you will find an icon titled:

    Aalto Thesis Database

  • Click on the icon to search for and open the thesis you are looking for from Aaltodoc database. You can find the thesis file by clicking the link on the OEV or OEVS field.

Reading the thesis

  • You can either print the thesis or read it on the customer computer screen.
  • You cannot save the thesis file on a flash drive or email it.
  • You cannot copy text or images from the file.
  • You cannot edit the file.

Printing the thesis

  • You can print the thesis for your personal study or research use.
  • Aalto University students and staff members may print black-and-white prints on the PrintingPoint devices when using the computer with personal Aalto username and password. Color printing is possible using the printer u90203-psc3, which is located near the customer service. Color printing is subject to a charge to Aalto University students and staff members.
  • Other customers can use the printer u90203-psc3. All printing is subject to a charge to non-University members.
Location:P1 Ark Aalto     | Archive
Keywords:roles of variables
teaching programming languages
JVM bytecode
JVM programming languages
data flow analysis
control flow analysis
muuttujien roolit
ohjelmointikielten opetus
JVM bytekoodi
JVM ohjelmointikielet
tietovuoanalyysi
Abstract (eng): Learning new programming language requires a lot of effort.
On top of syntax and semantics, experienced programmers have tacit knowledge on how certain problems are solved on the language, some knowledge on how programs should he written and also expect the code to have certain features when they read someone else's code.
To aid in learning a new language and also to transport this tacit knowledge, several research reports offer roles of variables as solution.

Several tools have also been written that try to detect roles of variables from source code.
Two of these tools use variable usage properties, its usages and definitions location in code in relation to other code and deduce if the variable has certain role characteristic.

In this thesis a mapping between the roles of variables usage properties and JVM byte code was made.
The aim is to find the same or similar characteristics on lower level language.
If properties can be detected on lower level language they can also be detected for numerous languages that are available and compile to JVM byte code.

The mapping was tested by implementing a prototype.
Variable usage properties seemed to be detected well, but the actual role identification did not work perfectly.
Even though there are limitations to what prototype using the mapping was able to do well, it seems plausible that roles of variables can be detected in byte code and further research is certainly needed.
Abstract (fin): Uuden ohjelmointikielen opetteleminen on haastava tehtävä.
Ohjelman lauseiden (syntaksi) ja niiden merkityksen (semantiikka) lisäksi kokeneilla ohjelmoijilla on tietoa siitä miten jotkin ongelmat ratkaistaan ko. ohjelmointikielellä, tietoa siitä miten ohjelmat pitäisi ko. kielellä kirjoittaa ja myös olettavat tiettyjä piirteitä muiden koodista jota lukevat.
Uuden kielen opetteluun ja myös tämän hiljaisen tiedon välitykseen on useissa tutkimuksissa tarjottu apuna muuttujien roolimärityksiä.

Useita työkaluja on rakennettu muuttujien roolien havainnointiin.
Kaksi näistä työkaluista käyttää muuttujien käyttäytymisominaisuuksia, sitä missä kohtaa ohjelmakoodia. muuttuja määritellään ja missä sitä käytetään, muuttujan roolin päättelyyn.

Tässä työssä yhdistetään muuttujien käyttäytymisominaisuudet Javan bytekoodiin.
Tavoitteena on löytää samat tai samanlaiset käyttäytymisominaisuudet alemman tason kielestä Jos käyttäytymisominaisuudet voidaan tunnistaa bytekoodista, voidaan ne mahdollisesti tunnistaa kaikille tai suurelle osalle Java bytekoodiksi kääntävistä kielistä ja kääntäjistä.

Liityntä muuttujien käytön ominaisuuksista bytekoodiin testattiin toteuttamalla. prototyyppi.
Muuttujien käytön ominaisuudet tunnuttiin tunnistavan hyvin prototyypillä, mutta varsinaisten roolien tunnistaminen ei toiminut täydellisesti.
Vaikka prototyypin kyky tunnistaa varsinaisia rooleja oli hyvin rajallinen, näyttää hyvinkin mahdolliselta että roolit pystytään tunnistamaan bytekoodista ja sen jatkotutkimus on hyvinkin tarpeen.
ED:2010-08-27
INSSI record number: 40298
+ add basket
« previous | next »
INSSI