INF328 - Programmeringsspråkelementer
Autumn 2012
Contents on this web page
The course INF328 takes a look at programming languages and their fundamental concepts.
This includes simple things like assignment statements (l-value and r-value), more complex mechanisms like function calls and exceptions, and complex structuring mechanisms like objects and abstract data types.
By understanding the concepts and their integration in a precisely, we will be able to exploit them in new ways, giving the software developer a larger and sharper tool box.
Towards the end of the course we will look at how these programming language elements are included or rejected from our new language Magnolia.
INF328 is a 5 study point course available to Bachelor, Master and PhD students. Some programming background is needed. The course is small enough to be taken in addition to the regular study program, or it can be expanded with a selected reading to fill a regular slot in the studies.
The contents of the course is expected to change the next time it is provided.
Reading Material
There is no specific text book.
The curriculum will consist of a few papers and discussions related to the papers' contents.
Active student participation is expected, both in presenting sections of the papers and in the discussions.
The following is an incomplete reading list for the course.
- Christopher Strachey: Fundamental Concepts in Programming Languages. Higher-Order and Symbolic Computation, 13:11-49 (2000). DOI 10.1023/A:1010000313106.
- William R. Cook: On understanding data abstraction, revisited. OOPSLA'09i 24:557-572 (2009). DOI 10.1145/1639949.1640133.
- Guy L. Steele, Gerald J. Sussman: LAMBDA - The ultimate imperative, MIT AIM 353 (1976). DOI 1721.1/5790. (Tero, W42, W43)
- C. A. R. Hoare. Communicating sequential processes. Commun. ACM 21, 8 (August 1978), 666-677. DOI 10.1145/359576.359585.
- Barbara Liskov, Alan Snyder, Russell Atkinson, and Craig Schaffert. Abstraction mechanisms in CLU. Commun. ACM 20, 8 (August 1977), 564-576. DOI 10.1145/359763.359789.
- Anya Helene Bagge, Valentin David, Magne Haveraaen, Karl Trygve Kalleberg: Stayin' alert:: moulding failure and exceptions to your needs. GPCE2006 5:265-274 (2006). DOI 10.1145/1173706.1173747.
Lecturer and course responsible: Magne Haveraaen and Anya Helene Bagge
Teaching assistant: none
- Tuesdays 1415 - 1600 in seminar room 2143 HiB (interleaved with inf220)
- Wednesdays 1415 - 1600 in seminar room 4138 HiB
Teaching starts Tuesday August 28 2011 (week 34),
Teaching will be in the form of lectures, student presentations, discussion, exercises and time off for self studies.
The teaching is plan will evolve as the course unfolds.
- Introduction
The course is pass/fail based on sufficient acitivity during the semester.
Latest update 2012-10-22 by
Magne Haveraaen