| Title: | Principles of Programming Languages |
|---|
| Code: | IPP |
|---|
| Ac.Year: | 2012/2013 |
|---|
| Term: | Summer |
|---|
| Study plans: | |
|---|
| Language: | Czech |
|---|
| Private info: | http://www.fit.vutbr.cz/study/courses/IPP/private/ |
|---|
| Credits: | 5 |
|---|
| Completion: | accreditation+exam (written) |
|---|
Type of instruction: | | Hour/sem | Lectures | Sem. Exercises | Lab. exercises | Comp. exercises | Other |
|---|
| Hours: | 39 | 0 | 0 | 0 | 13 |
|---|
| | Examination | Tests | Exercises | Laboratories | Other |
|---|
| Points: | 60 | 20 | 0 | 0 | 20 |
|---|
|
|---|
| Guarantee: | Kolář Dušan, doc. Dr. Ing., DIFS |
|---|
| Lecturer: | Kolář Dušan, doc. Dr. Ing., DIFS Křivka Zbyněk, Ing., Ph.D., DIFS |
| Instructor: | Bromová Pavla, Ing., DIFS Horáček Petr, Ing., DIFS Křivka Zbyněk, Ing., Ph.D., DIFS Šebeň Patrik, Ing., DIFS |
|---|
| Faculty: | Faculty of Information Technology BUT |
|---|
| Department: | Department of Information Systems FIT BUT |
|---|
| Prerequisites: | |
|---|
| Schedule: | | Day | Lesson | Week | Room | Start | End | Lect.Gr. | St.G. | EndG. |
|---|
| Mon | Reklamace zkoušky | 2013-05-20 | C228 | 13:00 | 14:50 | 2BIA | | |
| Mon | Reklamace zkoušky | 2013-05-20 | C228 | 13:00 | 14:50 | 2BIB | | |
| Mon | exam - 2. opravný termín | 2013-06-03 | D0206 | 14:00 | 16:50 | 2BIA | | |
| Mon | exam - 2. opravný termín | 2013-06-03 | D0206 | 14:00 | 16:50 | 2BIB | | |
| Mon | exam - 2. opravný termín | 2013-06-03 | D105 | 14:00 | 16:50 | 2BIB | | |
| Mon | exam - 2. opravný termín | 2013-06-03 | D105 | 14:00 | 16:50 | 2BIA | | |
| Mon | exam - 2. opravný termín | 2013-06-03 | D105 | 14:00 | 16:50 | 3BIT | | |
| Thu | Reklamace půlsemestrálky | 2013-04-11 | C228 | 13:00 | 14:50 | 2BIB | | |
| Thu | exam - řádný termín | 2013-05-09 | A112 | 14:00 | 16:50 | 2BIA | | |
| Thu | exam - řádný termín | 2013-05-09 | A112 | 14:00 | 16:50 | 2BIB | | |
| Thu | exam - řádný termín | 2013-05-09 | D0206 | 14:00 | 16:50 | 2BIB | | |
| Thu | exam - řádný termín | 2013-05-09 | D0206 | 14:00 | 16:50 | 2BIA | | |
| Thu | exam - řádný termín | 2013-05-09 | D0207 | 14:00 | 16:50 | 2BIA | | |
| Thu | exam - řádný termín | 2013-05-09 | D0207 | 14:00 | 16:50 | 2BIB | | |
| Thu | exam - řádný termín | 2013-05-09 | D105 | 14:00 | 16:50 | 2BIA | | |
| Thu | exam - řádný termín | 2013-05-09 | D105 | 14:00 | 16:50 | 2BIB | | |
| Thu | exam - řádný termín | 2013-05-09 | D105 | 14:00 | 16:50 | 3BIT | | |
| Thu | exam - řádný termín | 2013-05-09 | E104 | 14:00 | 16:50 | 2BIA | | |
| Thu | exam - řádný termín | 2013-05-09 | E104 | 14:00 | 16:50 | 2BIB | | |
| Thu | exam - řádný termín | 2013-05-09 | E105 | 14:00 | 16:50 | 2BIB | | |
| Thu | exam - řádný termín | 2013-05-09 | E105 | 14:00 | 16:50 | 2BIA | | |
| Thu | exam - řádný termín | 2013-05-09 | E112 | 14:00 | 16:50 | 2BIA | | |
| Thu | exam - řádný termín | 2013-05-09 | E112 | 14:00 | 16:50 | 2BIB | | |
| Thu | exam - řádný termín | 2013-05-09 | G202 | 14:00 | 16:50 | 2BIB | | |
| Thu | exam - řádný termín | 2013-05-09 | G202 | 14:00 | 16:50 | 2BIA | | |
| Fri | exam - 1. opravný termín | 2013-05-24 | D0206 | 15:00 | 17:50 | 2BIA | | |
| Fri | exam - 1. opravný termín | 2013-05-24 | D0206 | 15:00 | 17:50 | 2BIB | | |
| Fri | exam - 1. opravný termín | 2013-05-24 | D0207 | 15:00 | 17:50 | 2BIB | | |
| Fri | exam - 1. opravný termín | 2013-05-24 | D0207 | 15:00 | 17:50 | 2BIA | | |
| Fri | exam - 1. opravný termín | 2013-05-24 | D105 | 15:00 | 17:50 | 2BIA | | |
| Fri | exam - 1. opravný termín | 2013-05-24 | D105 | 15:00 | 17:50 | 2BIB | | |
| Fri | exam - 1. opravný termín | 2013-05-24 | D105 | 15:00 | 17:50 | 3BIT | | |
| Fri | exam - 1. opravný termín | 2013-05-24 | E104 | 15:00 | 17:50 | 2BIA | | |
| Fri | exam - 1. opravný termín | 2013-05-24 | E104 | 15:00 | 17:50 | 2BIB | | |
| Fri | exam - půlsemestrální | 2013-03-22 | D0207 | 16:00 | 17:50 | 2BIA | | |
| Fri | exam - půlsemestrální | 2013-03-22 | D0207 | 16:00 | 17:50 | 2BIB | | |
| Fri | exam - půlsemestrální | 2013-03-22 | E104 | 16:00 | 17:50 | 2BIA | | |
| Fri | exam - půlsemestrální | 2013-03-22 | E104 | 16:00 | 17:50 | 2BIB | | |
| Fri | exam - půlsemestrální | 2013-03-22 | E105 | 16:00 | 17:50 | 2BIA | | |
| Fri | exam - půlsemestrální | 2013-03-22 | E105 | 16:00 | 17:50 | 2BIB | | |
| Fri | exam - půlsemestrální | 2013-03-22 | D105 | 16:00 | 17:50 | 2BIA | | |
| Fri | exam - půlsemestrální | 2013-03-22 | D105 | 16:00 | 17:50 | 2BIB | | |
| Fri | exam - půlsemestrální | 2013-03-22 | D0206 | 16:00 | 17:50 | 2BIA | | |
| Fri | exam - půlsemestrální | 2013-03-22 | D0206 | 16:00 | 17:50 | 2BIB | | |
| Fri | exam - půlsemestrální | 2013-03-22 | E112 | 16:00 | 17:50 | 2BIA | | |
| Fri | exam - půlsemestrální | 2013-03-22 | E112 | 16:00 | 17:50 | 2BIB | | |
| Fri | exam - půlsemestrální | 2013-03-22 | A112 | 16:00 | 17:50 | 2BIB | | |
| Fri | exam - půlsemestrální | 2013-03-22 | A113 | 16:00 | 17:50 | 2BIA | | |
| Fri | exam - půlsemestrální | 2013-03-22 | A113 | 16:00 | 17:50 | 2BIB | | |
| Fri | exam - půlsemestrální | 2013-03-22 | A112 | 16:00 | 17:50 | 2BIA | | |
| Fri | exam - půlsemestrální | 2013-03-22 | G202 | 16:00 | 17:50 | 2BIA | | |
| Fri | exam - půlsemestrální | 2013-03-22 | G202 | 16:00 | 17:50 | 2BIB | | |
|
|---|
| | | Learning objectives: |
|---|
To give an overview: of existing programming paradigms, of range of existing programming languages and their classification, and of requirements on programming language analysis and translation. | | Description: |
|---|
The course offers basic classification of programming languages with more detailed explanation of imperative and declarative languages. Explaining imperative paradigm, it will be presented non-structured, structured (both block and modular), and object-oriented prgoramming languages. A brief introduction into functional and logic programming will be studied during explanation of declarative paradigm. The underlying theories are discussed too. Students will be also given an introduction to processing (translation) of presented programming paradigms/languages. | | Knowledge and skills required for the course: |
|---|
Formal languages and their models, grammars, automata; translation/analysis of formal languages. Focus on regular and context-free languages and their models, grammars, automata and processing.
| | Learning outcomes and competences: |
|---|
Students will be able to classify programming languages. They will be able to use a given programming paradigm on a certain level too. Moreover, basic analysis and compilation issues will be clarified as well. | | Syllabus of lectures: |
|---|
- Introduction, definition of used terms
- Imperative languages, non-structured programming languages
- Block-structured programming languages
- Modular languages
- Object-oriented languages
- Some specialities of object-oriented programming languages
- Comparison of various kinds of imperative programming languages
- Declarative languages, lambda calculus
- Functional programming languages
- Logical programming languages
- Another declarative programming languages, their comparison
- Main differences in usage and implementation of declarative and imperative programming languages
- Conclussion, discussion of the follow-up courses
| | Syllabus - others, projects and individual work of students: |
|---|
|
A simple program or programs/scripts implemented in the given programming language together with relevant documentation. | | Fundamental literature: |
|---|
- Sebesta R.W.: Concepts of Programming Languages, 4th edition, ADDISON-WESLEY, 1999, ISBN 0-201-38596-1
- MacLennan, B.J.: Principles of Programming Languages: Design,
Evaluation, and Implementation (3rd Edition). Oxford University
Press, 1999.
| | Study literature: |
|---|
- Lecture notes in PDF file
- Kolář, D.: Principy programovacích jazyků a objektově orientovaného programování - I, studijní opora pro kombinované studium, modul IPP I, VUT FIT, 2006
- Křivka, Z., Kolář, D.: Principy programovacích jazyků a objektově
orientovaného programování - II, studijní opora pro kombinované studium,
modul IPP II, VUT FIT, 2008
- Kolář, D.: Principy programovacích jazyků a objektově orientovaného
programování - III, studijní opora pro kombinované studium, modul IPP
III, VUT FIT, 2006
| | Controlled instruction: |
|---|
- Mid-term exam - written form, a test, where answers are given in sentences, by selection of appropriate answer from offered ones, and by combination of both of these possibilities, no possibility to have a second/alternative trial. (20 points)
- Projects realization - 1 project (program(s) development according to a given specification) with appropriate documentation. (20 points)
- Final exam - written form, a test, where answers are given in sentences, by selection of appropriate answer from offered ones, and by combination of both of these possibilities, 2 another corrections trials possible. (60 points - the minimal number of points which can be obtained from the final exam is 25, otherwise, no points will be assigned to a student.)
| | Progress assessment: |
|---|
- Mid-term exam, for which there is only one schedule and, thus, there is no possibility to have another trial - 20 points.
- One project should be solved and delivered in given deadlines during a term - 20 points.
| | Exam prerequisites: |
|---|
At the end of a term, a student should have at least 50% of points that he or she could obtain during the term; that means at least 20 points out of 40. Plagiarism and not allowed cooperation will cause that involved students
are not classified and disciplinary action can be initiated.
| | |
|