Klikk på tall for å vise stripe
Toon 1Toon 2Toon 3Toon 4Toon 5Toon 6Toon 7Toon 8Toon 9Toon 10 JavaZone JavaZone

Fra kildekode til bytecode - Implementering av egne språk for JVMen

08e5722a-2e75-4c6c-8760-e8911dec9672
View video  Presentation
Abstract:
Alternative språk til Java som kjører på VMen er i vinden om dagen. Groovy, Jython og JRuby er eksempler på populære språk som fler og fler eksperimenterer med, og som bransjen er iferd med å ta i bruk. Felles for disse språkene er at kildekoden blir kompilert til Java Bytecode før den kan eksekveres på JVMen.
Målet med dette foredraget er å gi en oversikt over veien fra kildekode til kjørende bytecode. Dette foredraget starter med en rask gjennomgang av kompilatorteknikk, etterfulgt av en gjennomgang av den fullstendige implementasjonen av et enkelt eget-utviklet språk - som kjører på JVMen. Vi vil forklare hvordan vi parser kildekoden og sjekker syntaktisk korrekthet. Neste steg blir å vise hvordan man genererer Java assembly-kode, som vi deretter bruker for generering av eksekverbar bytecode.
Foredraget vil være en teknisk sesjon, med live-demoer av kjernekonseptene. Vi vil runde av foredraget med en kort diskusjon av mulige motiver for å ville utvikle egne språk for VMen.
Outline:
  • Kompilatorteori
  • Fra kildekode til bytecode
    • Lexing
    • Bygging av AST
    • Semantikk
    • Generering av bytecode
  • Motivasjon
  • Oppsummering
Language:
Norsk
Level:
Intermediate/Advanced
Required Experience:
Deltakerne vil ha en fordel av god forståelse av JVM-plattformen.
Expected Audience:
Utviklere som er nysgjerrige på hvordan språkene til plattformen vi jobber på til daglig fungerer.
  • Photo of Kristian Nordal
    Kristian Nordal
    Kristian Nordal jobber til daglig hos Arktekk, som Java-utvikler med hovedfokus på open source og smidig utvikling. Han er commiter på Codehaus sitt prosjekt for Maven-plugins og har i flere år deltatt i utviklingen av Maven 2-plugins, som for eksempel den første pluginen for Jetty5 og appassembler- pluginen.
  • Photo of Trygve Laugstøl
    Trygve Laugstøl
    Trygve Laugstøl er daglig leder i Arktekk og er i tillegg utvikler, arkitekt med mange års erfaring med Java-utvikling. Han har lang erfaring med utvikling og bruk av åpen kildekode som kjerneutvikler av Maven 2 og Continuum. Trygve har jobbet lenge med utvikling av plugins som støtter opp om smidig utvikling og som rådgiver innenfor disse områdene.