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

Automaadid, keeled ja translaatorid 2017/18 kevad

  • Üldinfo
  1. Õppekorraldus
  2. Eksam
  3. Reeglid
  4. Töövahendid
  5. Projekt
  • 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
  11. Semantiline analüüs
  12. Kompilaator
  • Moodle
  • Bitbucket
  • Fleep!

Tuntud keelte BNF-id

  • Java
    • Java 7 mitmene grammatika, mis kompaktselt defineerib keele süntaks.
    • Java 7 avaldiste kihiline grammatika. See on üheselt parsitav ja selle läbi saab ka defineerida iga avaldise tähendust. Väike väljalõige sellest grammatikast: java_simple.txt. Java 8 spec enam mitmest grammatikat ei sisalda. Lõpus on lihtsalt kihilise grammatika kokkuvõtte: Java 8 kihiline grammatika.
    • Java ANTLR grammatika: Java mitmene grammatika, aga operaatorid on prioriteedi järjekorras ja vaikimisi vasakassotsiatiivsed. (Ainult omistamise puhul on assotsiatiivsus annotatsiooniga välja toodud.)
  • Python
    • Pythoni abstraktne grammatika
  • Kotlin
    • http://confluence.jetbrains.com/display/Kotlin/Grammar
  • PHP
    • https://github.com/nikic/PHP-Parser/blob/master/grammar/zend_language_parser.phpy
  • Ruby
    • http://web.njit.edu/all_topics/Prog_Lang_Docs/html/ruby/yacc.html
    • https://github.com/ruby/ruby/blob/trunk/parse.y
  • SQL
    • Oracle SQL, SELECT lause
      • Kas select nimi, t.amet, tt.vanus, o.nimi osakonnanimi from tootajad t, osakonnad o where t.osakond = o.id on süntaktiliselt korrektne Oracle SQL lause?
    • ANTLR 3 PL/SQL grammatika
  • Dokumentkeelte spetsifitseerimisel kasutatakse kontekstivaba grammatikate ja regulaaravaldiste segu (EBNF). Kuidas oleks näiteks <!ELEMENT p (#PCDATA | p | ul | dl | table | h1|h2|h3)*> grammatikana?
  • 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