Institute of Computer Science
  1. Courses
  2. 2018/19 spring
  3. Automata, Languages and Compilers (LTAT.03.006)
ET
Log in

Automata, Languages and Compilers 2018/19 spring

  • Ü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.

  • Institute of Computer Science
  • Faculty of Science and Technology
  • University of Tartu
In case of technical problems or questions write to:

Contact the course organizers with the organizational and course content questions.
The proprietary copyrights of educational materials belong to the University of Tartu. The use of educational materials is permitted for the purposes and under the conditions provided for in the copyright law for the free use of a work. When using educational materials, the user is obligated to give credit to the author of the educational materials.
The use of educational materials for other purposes is allowed only with the prior written consent of the University of Tartu.
Terms of use for the Courses environment