Course Catalog 2010-2011
Basic

Basic Pori International Postgraduate Open University

|Degrees|     |Study blocks|     |Courses|    

Course Catalog 2010-2011

OHJ-2056 Principles of Programming Languages, 5 cr

Person responsible

Matti Rintala

Requirements

Examination, programming project, and weekly exercises.
Completion parts must belong to the same implementation

Principles and baselines related to teaching and learning

-

Learning outcomes

Student is able to explain general principles and basic concepts of programming languages, at a higher level than that of a single programming language. Student understands the effects of these principles to language implementation and use, and is able to choose a suitable programming language for his purposes.

Content

Content Core content Complementary knowledge Specialist knowledge
1. Syntax description (context-free grammars). Basic parsing mechanism. Parsing algorithms (LL and LR).  Chomsky's four classes of languages. Knowing more parsing algorithms besides LL and LR. Describing axiomatic semantics.  Formal description of semantics (denotational, operational). 
2. Implementation choices and implementation principles of the most common programming language features.  Detailed implementation of some features in a certain programming language.   
3. Principles of memory management, e.g., the content and importance of activation records.  Implementation of activation records in a certain computer architecture.   
4. Basic knowledge of different programming paradigms. Understanding programs written in different paradigms (functional, logic, concurrent).  Writing small programs in different programming paradigms.  Writing real programs in a certain paradigm other than the most common ones. 

Study material

Type Name Author ISBN URL Edition, availability, ... Examination material Language
Book   Concepts of programming languages   Sebesta       Fifth or sixth edition      English  
Book   Ohjelmointikielet - periaatteet, käsitteet, valintaperusteet   Maarit Harsu   952-14-0981-9          Suomi  
Lecture slides     Harsu, Geldenhuys            English  

Prerequisites

Course Mandatory/Advisable Description
OHJ-1406 Introduction to Object-Oriented Programming Mandatory   1
OHJ-2016 Utilization of Data Structures Mandatory   1
OHJ-1156 Programming II Mandatory    

1 . At least one of the courses is required

Prerequisite relations (Requires logging in to POP)



Correspondence of content

Course Corresponds course  Description 
OHJ-2056 Principles of Programming Languages, 5 cr OHJ-2050 Principles of Programming Languages, 5 cr  

Additional information

Will not be lectured year 2010-2011

Last modified26.08.2010