TDP007 Konstruktion av datorspråk
Kursmaterial
Föreläsningsslides
Nedan kommer slides och övrigt från föreläsningarna att publiceras- Föreläsning 1: Introduktion
till kursen och Ruby
Tillhörande filer: fo1.rb - Föreläsning 2: Reflektioner kring hur
man kan jämföra språk, samt några fler Ruby-detaljer (testning, likhet och
reguljära uttryck)
Tillhörande filer: faculty.rb, test_faculty.rb, some_functions.rb -
Föreläsning 3: Uppmärkningsspråk
Tillhörande filer: note.dtd, note.xsd, newspaper.dtd, note2.xml, sax_example.rb, inventory.xml
Lösningsförslag till övning: find_article.rb, sax_solution.rb, eller sax_stack_solution.rb - Föreläsning 4: Uppmärkningsspråk (forts.)
Tillhörande filer: note2.xml, print_tree.rb, foobar.xml
Lösningsförslag: foobar.rb animals.xml, key.dtd key.rb - Föreläsning 5: Domänspecifika språk
Tillhörande filer: warehouse.rb, lager.txt, configuration.rb, expr.rb
Lösningsförslag till övningar:
warehouse_solution.rb
expression.rb
expressionsolution.rb (lite extra utskrifter etc) - Föreläsning 6: Parsning
Tillhörande filer: rdparse.rb
Lösningsförslag till övningar: ast.rb - Föreläsning 7: Deklarativ programmering
Tillhörande filer: cont.rb, amb_test.rb, constraint_test.rb - Föreläsning 8: Utblickar och
sammanfattning
Tillhörande filer: stack.rb,
Lösningsförslag: stacksolution.rb
Repo med språkexempel
Konfigurera system
Installera Ruby
I denna kurs kommer vi använda ruby. Det är därför viktigt att ni har en fungerande version på er dator. I laborationssalarna på universitetet finns version 3.0.2 installerad. Det är förmodligen smidigt som ni försöker installera en närliggande version på era egna system.
Installation av ruby i den egna miljön kan man göra på olika sätt och man
kan hitta dessa i Rubys dokumentation. Vanligtvis fungerar följande kommando
bra:
sudo apt install ruby-full.
Gems
Gems är paket som innehåller funktionalitet utöver Rubys grundfunktionalitet. Vi kommer bland annat använda oss av ett gem som heter test-unit för att arbeta med enhetstester. test-unit bör komma med den fulla installationen av ruby, annars kan man hitta instruktioner här.
Emacs
Kursen använder Emacs som text-editor. Det är fritt att använda andra alternativ men det ges inget stöd för andra editors. Emacs garanteras finnas vid tentamen, övriga editors får man själv kontrollera om de är installerade i salarna. Vill du testa kan du sätta dig en SU-sal och se vad som finns där.
Sidansvarig: Pontus Haglund
Senast uppdaterad: 2026-02-04
