Functional Programming in Erlang
Functional programming is increasingly important in providing global-scale applications on the internet. For example, it’s the basis of the WhatsApp messaging system, which has over a billion users worldwide.
This free online course is designed to teach the principles of functional programming to anyone who’s already able to program, but wants to find out more about the novel approach of Erlang.
Learn the theory of functional programming and apply it in Erlang
The course combines the theory of functional programming and the practice of how that works in Erlang. You’ll get the opportunity to reinforce what you learn through practical exercises and more substantial, optional practical projects.
Over three weeks, you’ll:
- learn why Erlang was developed, how its design was shaped by the context in which it was used, and how Erlang can be used in practice today;
- write programs using the concepts of functional programming, including, in particular, recursion, pattern matching and immutable data;
- apply your knowledge of lists and other Erlang data types in your programs;
- and implement higher-order functions using generic patterns.
The course will also help you if you are interested in Elixir, which is based on the same virtual machine as Erlang, and shares its fundamental approach as well as its libraries, and indeed will help you to get going with any functional language, and any message-passing concurrency language – for example, Google Go and the Akka library for Scala/Java.
Learn with Erlang experts at the University of Kent
The course has been developed by the University of Kent, where functional programming has been a strength for the last 30 years. Throughout the course, you’ll learn with lead educator, Simon Thompson – co-author of one of the standard introductions to Erlang, O’Reilly Media’s Erlang Programming.
REQUIREMENTS
This course is designed for anyone with prior programming experience, who wants to learn more about functional programming and Erlang.
You could be a developer or computing professional seeking to understand and gain experience with this technology; a computer science undergraduate studying functional programming as part of your degree; or a self-taught programmer looking to take your knowledge to the next level.
For more information click "Further official information" below.