Logo ČVUT
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2024/2025

Programming Paradigms

Předmět není vypsán Nerozvrhuje se
Kód Zakončení Kredity Rozsah Jazyk výuky
BIE-PPA Z,ZK 5 2P+2C anglicky
Garant předmětu:
Přednášející:
Cvičící:
Předmět zajišťuje:
katedra teoretické informatiky
Anotace:
Požadavky:
Osnova přednášek:

1. Introduction: The syntax and semantics of programming languages, scopes, strict and lazy evaluation, orthogonality.

2. Imperative programming paradigm: statements, data types, procedures, passing parameters.

3. Object-oriented programming paradigm and data abstraction.

4. Functional programming paradigm and lambda calculus.

5. Semantic constructs of functional programming languages and their implementation. Functional programming style.

6. Logic programming paradigm and formal logic.

7. Semantic constructs of logic programming languages and their implementation. Declarative programming style.

8. Programming languages with constraints.

9. Query languages. Domain-specific languages.

10. Support and language constructs for parallel and distributed computing and synchronization in various programming paradigms.

11. Scripting languages.

Osnova cvičení:
Cíle studia:

The goal is to provide a survey and understanding of main programming paradigms. Basic principles and semantic conceptsof high-level programming languages based on these paradigms are explained. In the area of object-oriented programming,the course builds upon the Object-Oriented Programming course. Functional and logic (declarative) programming paradigmsare discussed in more details. Beside explanation of the basic principles, the emphasis is on mastering practical examples.The course provides comparison and discussion of the pros and cons of individual paradigms and the reasons for combining these paradigms in modern programming languages.Moreover, implementation aspects of various types of programming languages are discussed.

Studijní materiály:

[1] Scott, M. L.: Programming Language Pragmatics, 3rd Edition, Morgan Kaufmann, 2009, 978-0123745149,

[2] Sebesta, R. W.: Concepts of Programming Languages, 10th Edition, Addison-Wesley, 2012, 978-0131395312,

[3] Sethi, R.: Programming Languages: Concepts and Constructs, Addison-Wesley, 1996, 978-0201590654,

Poznámka:

Information about the course and courseware are available at https://courses.fit.cvut.cz/BIE-PPA/

Další informace:
https://courses.fit.cvut.cz/BIE-PPA/
Pro tento předmět se rozvrh nepřipravuje
Předmět je součástí následujících studijních plánů:
Platnost dat k 9. 11. 2024
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/cs/predmet3466506.html