Arvutiteaduse instituut
  1. Kursused
  2. 2018/19 kevad
  3. Automaadid, keeled ja translaatorid (LTAT.03.006)
EN
Logi sisse

Automaadid, keeled ja translaatorid 2018/19 kevad

  • Üldinfo
  • Kava
    • 1. Soojendus
    • 2. Regulaaravaldised
    • 3. Olekumasinad
    • 4. Lõplikud automaadid
    • 5. Avaldise struktuur
    • 6. Grammatikad ja lekser
    • 7. Käsitsi parsimine
    • 8. ANTLR intro
    • 9. AST loomine
    • 10. Interpretaator
      • Vam: CMa simulaator
      • Muutujate skoobid
      • Interpreter pattern*
      • Kodutöö
    • 11. Semantiline analüüs
    • 12. Kompilaator
  • Moodle
  • Bitbucket
  • Fleep!
  • Backlinks

10. Interpretaator

Me oleme nüüd lõpuks jõudnud aine tuumani. Me saame nüüd interpretaatori läbi anda programmitekstile tähenduse. Lihtsa interpretaatori kirjutamine on selle aine kõige tähtsam ülesanne ja moodustabki eksami alusosa. Me oleme siiamaani väärtustanud pisikesed avaldised ja muutujate väärtused oleme keskkonnast otsinud (Map tüüpi argument). AKT keele interpreteerimisel ongi siis vaja mõelda, kuidas muutujate väärtusi hallata ka näiteks funktsioonide väljakutsumisel.

  • Vam. Alustame aga CMa virtuaalmasinaga tutvumist, sest eksami lõviosas on vaja ASTi analüüsida ja genereerida CMa koodi. Järgmine nädal on lõviosa ülesannete kohta näited.
  • Muutujate skoopid. Räägime muutujate skoopidest ja vaatame, kuidas ehitada väärtuskeskkond, mis muutujate skoopidega arvestab.
  • Interpretaatoritest üldisemalt. Kui programmeerimiskeele interpreteerimine on kõik selge, siis tasub ka interpretaatori mõistet natuke üldisemalt vaadelda. See ei ole raskem materjal ja võiks pakkuda huvi kõigile, aga meie põhieesmärk siin on ikkagi avaldiste väärtustamisest aru saada!
  • Kodutöö. Tulebki nüüd interpreteerida AKT keelt selle ASTi põhjal, mis on eelmise kodutöö väljund.

Selle teema juures on eriti oluline meeles pidada, et meie peamine eesmärk on arendada alt-üles modulaarne arusaamine programmide täitmisest. Kui saame endale juurutada selline mõtteviis, siis on lootus, et saame ka programme modulaarsemalt ja puhtamalt disainida.

  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Courses’i keskkonna kasutustingimused