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.
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)
- 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.