Functional Programming 420-IS1-3PF
Course profile: General Academic
Form of study: Full-time studies
Course type: Optional
Year/semester of study: 3 / 6
Prerequisites (sequential system of courses and exams): Items introducing: Introduction to Structural Programming
Lecture: 15h
Laboratory classes: 30h
Teaching methods: Lectures, exercises
ECTS credits: 4
Balance of student workload:
Class attendance:
- lecture 15h
- laboratory classes 30h
Course preparation:
- lecture 8h
- laboratory classes 15h
Homework: 15h
Preparation for tests: 6h
Preparation for the exam: 8h
The total number of hours of exams and tests: 6h
Individual consultation with the teacher: 7h
Student workload:
- that requires direct interaction with the teacher: 52h, 2 ECTS
- that does not require direct interaction with the teacher: 52h, 2 ECTS
Type of course
Mode
Prerequisites
Prerequisites (description)
Course coordinators
Learning outcomes
Learning outcomes:
knowledge of functional programming paradigm. KA6_WG4, KA6_WG11
knowledge of lambda calculus. KA6_WG1, KA6_WG11
ability of reasoning in lambda calculus. KA6_UW4, KA6_UW16
ability of programming using a functional language. KA6_UW7
using interchangeably functional and imperative languages depending on the task being performed. KA6_UW7
selection of tools appropriate to the task being performed. KA6_KK1
Assessment criteria
General form of getting credit: 1 colloquium on the part concerning lambda calculus, 1 colloquium after programming. Written test for the grade.
Bibliography
Bibliography:
- R. Nederpelt, H. Geuvers, „Type Theory and Formal Proof", Cambridge University Press 2014
- E. Chailloux, P. Manoury, B. Pagano, „Developing Applications with Objective Caml”, http://caml.inria.fr/pub/docs/oreilly-book/
- http://www.ocaml-tutorial.org/
Additional information
Additional information (registration calendar, class conductors, localization and schedules of classes), might be available in the USOSweb system: