Download Functional Programming Lecture notes, In this course we'll learn functional programming through haskell. The main motivation of this course is to prepare people for real world programming. Tobe a successful haskell programmer, I believe, one needs the uncluttered thought of a mathematician combined with the pragmatism of an Engineer. One can learn the fundamentals in a very matter of days. However, one needs regular practice to be an accomplished programmer. This note covers the subsequent topics: introduction, pattern matching, The Sieve of eratosthenes, Fibonacci Series, Folding Lists, Data types, an expression evaluator, Lambda Calculus, Modules, type inference, Uni cation algorithm, the type inference algorithm, type classes, Functions with varible number of arguments.