TIEA341 Functional Programming (1–5 cr)

Study level:
Intermediate studies
Grading scale:
0-5
Language:
English, Finnish
Responsible organisation:
Faculty of Information Technology
Curriculum periods:
2024-2025, 2025-2026, 2026-2027, 2027-2028

Tweet text

More detailed and current information can be found in the information of the realisation.

Description

This course covers the basics of functional programming, including expressions: expression formation and reduction, variables: variable scope and binding, procedures: procedure calls and side effects, recursion: classification of recursive processes, functions: higher-order and anonymous functions, and abstractions: modeling abstractions with functional control and data structures.

Learning outcomes

On this course, we will study what untyped (that is, dynamically typed) functional programming looks like and what it is good for. The goal of this course is not to make you into a top notch application developer, but rather to give you deeper insights into the basic elements of programming, and to build you a sufficient foundation for later exploring typed (that is, statically typed) functional programming without tears. On the side, this course also offers you an excellent excuse to try out new tools and ways of working.

Description of prerequisites

This course does not have absolute prerequisites in the form of other courses. However, participants are expected to have basic computer skills, a reasonable level of mathematical maturity and a healthy attitude towards work. Mathematical maturity does not only make the course easier to complete, but also helps make connections with topics that are covered in greater depth on other courses.

Completion methods

Method 1

Select all marked parts
Parts of the completion methods
x

Participation in teaching (1–5 cr)

Type:
Participation in teaching
Grading scale:
0-5
Language:
English, Finnish

Teaching