Lecture Introduction to Functional Programming
Description
VAK 04IN1023
Category: Lecture+Lesson, 4 SWS
Bachelor Basic Course
ECTS: 6, Sommer Semester
University of Koblenz-Landau
Lecturer: PD Dr. Stefan Bosse
Students master the functional programming paradigm and programming language such as Haskell, Scheme, or the functional subset of JavaScript. Students can functionally model simple algorithmic problems and data structures, using functions of higher order and type constructors such as functors, monads, and monoids. The students know typical scenarios of functional programming in the context of data / web or parallel programming.
Content
- Introduction and motivation; From mathematic to programming
- Expressions and equation-based closure
- Functional Composition, anonymous features, higher order functions.
- Typing and Type Constraints, Type constructors
- Algebraic Data Types (product and sum types)
-
Abstract Data Types
- Dictionaries
- Hash Tables
- Linked Lists
- Stacks
- Queues
- Trees
- Graphs
- Lambda Calculus
- Applications of functional programming
- Monoids, functors, monads
- Modules, Libraries of combinators
- Analysis of computational time, lazy evaluation, memoization
Download
- Script
- PDF
- Slides
- PDF