Course: Special Programming Languages

« Back
Course title Special Programming Languages
Course code KI/KSPL
Organizational form of instruction Seminary
Level of course Bachelor
Year of study not specified
Semester Summer
Number of ECTS credits 2
Language of instruction Czech
Status of course Compulsory-optional
Form of instruction Face-to-face
Work placements This is not an internship
Recommended optional programme components None
Lecturer(s)
  • Fišer Jiří, Mgr. Ph.D.
Course content
1. Scheme - data structures (s-expressions) 2. Scheme - functions and special forms 3. Scheme - recursion and list operations 4. Scheme - lambda function, currying, closures 5. Scheme - high-order functions (map, zip, fold) 6. Scheme - macros and lazy evaluations (streams) 7. Scheme - continuations and corutines 8. Haskell - pattern matching 9. Haskell - static type system 10. Haskell - comprehensions and non strict evaluation 11. Haskell - algebraic data types 12. Haskell - type classes 13. Haskell - IO monads 14. Haskell - monads (principles)

Learning activities and teaching methods
unspecified
Learning outcomes
Basic principles and tools of functional programming in the Schema and Haskell programming language. Main target: practical knowledge of functional programming approaches (recursion, closures, high-order functions, lazy evolution) and its application in main-stream OOP languages (Java, C#, Boo), which contains increasing number of functional constructs.

Prerequisites
unspecified

Assessment methods and criteria
unspecified
homework assignment short sample program written in one of the languages (taught in this course) using the approaches of functional programming
Recommended literature
  • Skoupil D. Programy a projekty v jazyce Scheme I. Katedra informatiky PřF UP Olomouc.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester
Faculty: Faculty of Science Study plan (Version): - (A14) Category: Informatics courses - Recommended year of study:-, Recommended semester: -