Nada

^ Upp till kursens hemsida.

Aktuell information om 2D1372, Artificiella språk och syntaxanalys, kursomgången 1995/1996

Senaste nytt

Restlabbar

Restlabbar kan redovisas när årets kursomgång har ordinarie terminalövningar. Efter den 1 mars 1997 har det gått ett år sedan förra kursomgången slutade. Kursledaren har därför rätt att kräva att du gör om hela labbkursen enligt årets labbar om du har någon labb kvar från den gamla kursen. Eftersom bara Flexlabben har ändrats sedan förra året så gäller följande regel 1997: du får tillgodoräkna dig alla klarade labbar från 1996 utom labb 2 (Lexikal analys med Flex) som du alltså måste göra om enligt labbanvisningen i årets kurs.

Labbresultat

Aktuella labbresultat finns här.

Wordspecifikationen har kommit!

Lagom till tentan har specifikationen av Wordformatet kommit. Specifikationen är drygt 100 sidor lång och tämligen invecklad. Den som fortfarande är intresserad kan köpa den för 20 kronor på Nadas elevexpedition. Alla som köper Wordspecifikationen måste samtidigt skriva på ett avtal som säger att program skrivna med hjälp av dokumentet bara får användas i denna kurs och för eget bruk.

Resultat av kursutvärdering

Här finns resultaten från kursutvärderingen och tentautvärderingen. En sammanfattning av kursutvärderingarna tillsammans med Viggos synpunkter finns i en kursanalys.

Ordinarie tenta 1996-03-04

Omtenta 1996-04-09

Omtenta 1996-08-30

Nästa tenta

Närmaste tenta är nästa kursomgångs ordinarietenta som går

Gamla nyheter

Den som har drakboken (som var kursbok i översättarteknikkursen) kan läsa den istället. Här finns en läsanvisning till drakboken.

Salsändring! Övningarna är i sal E2.

Viktiga nyheter kan läsas i kursens nyhetsgrupp nada.kurser.syntax.

Lärare

Kursledare och föreläsare är Viggo Kann, viggo@nada.kth.se. Mottagningstid tisdagar klockan 14.00-15.15.

Kurslitteratur

Kurslitteraturen ska läsas på egen hand parallellt med kursen. Föreläsningar, övningar och laborationer täcker endast en del av kursmaterialet. Det finns en läsanvisning inför tentan.

Kursbok

"T W Parsons: Introduction to compiler construction", Computer Science Press, New York, 1992, ISBN 0-7167-8261-8. Pris: 320 kronor i kårbokhandeln.

Kursbunt

Kursbunten kan köpas på första föreläsningen och därefter på Nadas elevexpedition för 20 kr. Papper som delas ut under kursens gång finns också på expeditionen.

Fördjupnings- och referenslitteratur

Följande litteratur är det inte nödvändigt att ha eftersom den finns tillgänglig i Info i Emacs eller på kursens hemsida, men den som är extra intresserad kan köpa den på Nadas elevexpedition.

Schema

Schemat är ändrat på en punkt. Övningarna är i sal E2 vecka 3-6,8-9 och i sal K2 vecka 7.

Schema för vecka 3, 1996

TidMåndagTisdagOnsdagTorsdagFredag
8
9
10Föreläsning
E3
11
12
13Föreläsning
E3
14
15Övning
E2
16
17

Schema för vecka 4-8, 1996

TidMåndagTisdagOnsdagTorsdagFredag
8Terminalövning
Svart,Lila
9
10Föreläsning
E3
11
12
13Föreläsning
E3
14
15Övning
E2 (K2 vecka 7)
16
17

Schema för vecka 9, 1996

TidMåndagTisdagOnsdagTorsdagFredag
8
9
10Föreläsning
E3
11
12
13Övning
E2
Föreläsning
E3
14
15Terminalövning
Svart,Lila
16
17

Detaljschema

Följande tabell visar vad som preliminärt kommer att behandlas under föreläsningarna, övningarna och terminalövningarna.
vecka 3
F1 hur en kompilator fungerar i stort (1.1-1.10)
F2 ändliga automater, DFA=NFA, minimal DFA (2.1-2.5, appendix A)
Ö1 automater, KMP-automat för textsökning, BDD
vecka 4
F3 formella språk, reguljära uttryck, RE=DFA, reguljära uttryck i Unix. (2.6-2.10)
F4 Lex, hur Lex fungerar (appendix B.1)
Ö2 reguljära uttryck, Lex
TÖ1 labb 1: simulering av NFA
vecka 5
F5 grammatik, syntaxträd, BNF, grammatik för naturliga språk (3.1.1-3.1.5)
F6 stackautomat (PDA), Turingmaskin (TM), Chomskyhierarkin (3.1.6-3.1.8)
Ö3 grammatiker, PDA, TM
TÖ2 labb 2: lexikal analys med Flex
vecka 6
F7 uppifrån-och-ner-syntaxanalys, rekursiv medåkning (3.2-3.5)
F8 botten-och-upp-syntaxanalys, Yacc (4.1, appendix B.2)
Ö4 Yacc
TÖ3 labb 3: rekursiv medåkning
vecka 7
F9 Yacc, åtgärder (appendix B.2)
F10 hur Yacc fungerar, LR, LALR(k) (4.2-4.4)
Ö5 (i sal K2) Yacc, felhantering
TÖ4 labb 4: reguljära uttryck med Flex och Bison
vecka 8
F11 intern representation, kodgenerering, optimering (5.1-5.3)
F12 attributgrammatik, Ox (5.4-5.8)
Ö6 attributgrammatik, Ox
TÖ5 arbete med labb 5
vecka 9
F13 att konstruera egna språk, verktyg för översättning
Ö7 tentatal
TÖ6 labb 5: en valfri översättare
F14 sammanfattning

Kursregistrering

Alla som vill gå kursen måste registrera sej på den. Detta görs med kommandot

res checkin syntax97

på någon av Nadas unixdatorer. Registrera dej så snart som möjligt efter att kursen börjat!

Laborationer

Labbkursen består av fem laborationer (fyra små och en lite större) som görs i grupper om högst två personer. Enstaka labbar får inte sparas till annan kursomgång. Om du inte fullgör alla fem labbarna inom ett år från kursens slut har kursledaren rätt att kräva att du gör samtliga labbar i den nya kursomgången.

Bonuspoäng

Vi tillämpar ett bonussystem för att uppmuntra eleverna att ligga i fas med undervisningen. För varje labb som redovisas på rätt redovisningstillfälle erhålls en bonuspoäng. Summan av dessa poäng adderas till den på tentan uppnådda poängsumman. Detta gäller ett kalenderår räknat från kursstart. Bonuspoäng kan endast fås det året som labbresultatet rapporteras. När du är inloggad kan du se vilka labbar du är godkänd på genom att ge kommandot

res show syntax97

Hederskodex

Grundregeln är att det jobb du gör i kursen (labbar, inlämningsuppgifter, tentor m.m.) ska du göra själv, förutom att labbarna kan göras i tvåmannagrupper. Vid redovisning av labbar ska båda i gruppen kunna redogöra i detalj även för vad labbkompisen skrivit.

Ibland, speciellt när man skriver program, kan det vara nödvändigt att fråga någon annan (en kamrat eller en handledare) om hjälp med att hitta fel. Detta är tillåtet förutsatt att du uppfyller följande villkor.

Varje annan form av samarbete och utnyttjande av andras lösningar betraktas som ett brott mot hederskodexen och kan bestraffas, t ex genom att du förlorar alla bonuspoäng eller får göra en ny uppgift.

Detta är en översatt och omarbetad version av den hederskodex som används i kursen Introduction to computer science vid Stanford University. Den tillämpas i ett flertal av Nadas kurser.

Tentamen

Tid och plats för ordinarietentan är måndag den 4 mars klockan 8-13 i sal F42-F45. Första omtentatillfälle är tisdag den 9 april klockan 8-13 i sal E31.

Tentan består av en teoridel utan hjälpmedel och en problemdel med kursboken som hjälpmedel. Hela skrivtiden är fem timmar. Efter två timmar måste teoridelen ha lämnats in, men du får gärna göra det tidigare. För godkänt krävs minst 25 poäng (inklusive maximala 5 poäng labbonus) av 50 poäng. Tentaresultatet anslås högst tre veckor efter tentan på institutionens anslagstavla på plan 3 (rakt under elevexpeditionen). Klagomål på rättning av tentan lämnas in skriftligen till kursledaren inom tre veckor från det att tentaresultatet anslagits.

Anmälan till tentan

Du behöver inte anmäla dej till tentan. (Tentaanmälan var tidigare obligatorisk för D- och E-teknologer men Nada använder sej inte av detta anmälningssystem längre.)

Kurskatalog

Kursen har en katalog på Unixdatorerna: /info/syntax. På denna katalog finns textfiler, programskelett, program och liknande som har med kursen att göra.

Köra hemma

Om du har en dator och ett modem hemma kan du koppla upp dej med modem mot Nadas datorer hemifrån. Information om hur du gör finns här.

Synpunkter på kursen

Eftersom denna kurs kommer att ges för många elever under flera års tid är vi tacksamma för synpunkter på kursen. En datorstödd kursutvärdering håller på att göras. Se vidare nyhetssammanfattningen i början av detta dokument. Synpunkter kan också lämnas direkt till Viggo.

Diverse länkar

^ Upp till kursens hemsida.


Sidansvarig: <viggo@nada.kth.se>
Senast ändrad 21 februari 1997
Tekniskt stöd: <webmaster@nada.kth.se>