• Course Delivery
    online
  • Tuition
    Free
  • Duration
    6 Weeks

PROGRAMMING WITH PURE FUNCTIONS

Imagine programming with pure functions that are shorter, more elegant, easier to reason about, and better to execute. This is functional programming in Haskell the latest programming language paradigm.

In this course you will learn powerful functional programming techniques such as immutable data structures, higher order functions, and lambdas. Learning functional programming will make you a better programmer whatever the language you use.

All major tech companies are adopting functional programming techniques, whether it's Scala at Twitter, MapReduce at Google, or Haskell at Facebook. In fact, early work on the Haskell functional programming language took place here at the University of Glasgow, and we've been teaching it to our undergraduate Computing Science students for many years.

We introduce the Haskell language with interactive tutorials and practical programming exercises. We'll take you from the basics through to advanced features of functional programming. Deconstruct buzzwords and phrases from lambda calculus to monads and explore the history, present status and future prospects of functional programming.

COURSE OUTCOMES

On successful completion this course, you will be able to:

  • Develop programming which involves basic Haskell techniques, including pure function definitions
  • Interpret data structures and function interfaces using types
  • Develop, modify and explore code using standard Haskell platform tools
  • Explore standard combinators for operating on lists
  • Produce definitions of algebraic data types and functions that traverse such types
  • Apply formal methods to prove properties of functional programming
  • Justify using common standard monads (including IO and Maybe)

Key Dates

Application Deadline
Start Date
15 Apr 2019
15 Apr 2019

What it's like to study a MOOC online

Free and entirely online
MOOCs (Massive Open Online Courses) are free online courses designed to be studied online by a cohort of world-wide learners.
Be part of a wider discussion
Our online MOOCs develop content that drives discussion and sharing of knowledge globally.
Test your knowledge
Experience resources such as video, articles, peer review and quizzes to test your knowledge.
Dynamic and ever-expanding portfolio
Maintain your focus and keep on topic with our dynamic range of MOOCs on FutureLearn and Coursera.

Want to learn more?

Find Out More