Wiki
Clone wikiinf225public / Home
Welcome to INF225!
This is the Wiki for the INF225 course at the University of Bergen (Fall 2013).
Exam Schedule
Notes
- Chapter -1: Another DSL Primer (complete example defining FSML (Finite State Machine Language)) [pdf, code]
- Complete notes in PDF
- Chapter 2 (was 3): Evaluators and Dynamic Semantics [pdf, code] (minor update 5/12, final version)
- Chapter 3 (was 4): Typecheckers and Static Semantics [pdf, code] (minor update 5/12, final version)
- Appendix A: Glossary [pdf, wiki, tags] (updated 5/12, final version)
- Flash cards with many of the glossary entries
Lessons
- Overview of everything so far
- Lesson 1 (19.08.): Introduction
- Lesson 2 (22.08.): Syntax and Grammars
- Lesson 3 (26.08.): Language Processing (w/Ralf Lämmel)
- Lesson 4 (02.09.): Parsing, ambiguities, priorities
- Lesson 5 (05.09.): DSL example: Stratify
- Lesson 6 (09.09.): Scannerless vs. scannerful parsing; layout [code]
- Lesson 7 (12.09.): Simple semantics with evaluator [code]
- Lesson 8 (16.09.): Defining and evaluating functions [code]
- Lesson 9 (19.09.): Scopes [code]
- Lesson 10 (23.09.): Nested scopes [code]
- Lesson 11 (26.09.): Environments and Stores[code]
- Lesson 12 (30.09.): Typechecking [code]
- Lesson 13 (03.10.): More typechecking [code]
- Lesson 14 (07.10.): Tree traversal, rewriting and visiting [code]
- Lesson 15 (14.10.): About the Term Project
- Lesson 16 (24.10.): Discussions on who's doing what for the term project. (+ something else?)
- Lesson 17 (04.11.): Code formatting in PGF, Tree-walking with Nuthatch
- Lesson 18 (07.11.): Formal semantics, big step and small step. Example in Prolog; Full (big-step/small-step/denotational) spec of a small functional language in Prolog
- Lesson 19 (14.11.): Recap Term project presentations: @ahjortland and @poglesbyg
- Lesson 20 (21.11.): Recap… Term project presentations: Niklas Trippler
- Hackathon 21.11.:
- Lesson 21 (25.11.): Recap… Term project presentations:
- Hackathon 25.11.: Term project presentations: Kristoffer Haugsbakk
- Lesson 22 (28.11.): Recap… Term project presentations: [your name here]
Term Project
Exercises
- Exercise 1
- Exercise 2
- Exercise 3 (Compulsory!) (last updated 27/9)
- Exercise 4 (last updated 14/10)
Practical Help
- Installing Rascal [Quick FAQ: use Juno for RCP and RAP developers; any other version may lead to problems installing the Rascal plugin. Use the (new) https link for checking out from Bitbucket; the old one only works if you have an account.]
- Using the SLE@UiB Team
Links
Updated