HomeCoursesLearn Functional Programming with Elixir

Beginner

11h 10min

Learn Functional Programming with Elixir

Gain insights into Elixir's functional programming fundamentals, explore expressions, modules, conditional statements, recursion, and delve into advanced topics like higher-order functions and application design. Discover Elixir's vibrant community and tooling.
Join 2.7M developers at
Overview
Content
Reviews
Elixir is a functional programming language that runs in the Erlang VM, a powerful environment to run distributed systems. This course uses Elixir because of its fun syntax, vibrant community, and production-ready tooling. Elixir syntax lets you focus on what’s important while learning functional programming. Starting from scratch, you will learn the fundamentals of Elixir including expressions, modules, conditional statements, and recursion. Towards the end of the course, you will focus on more advanced material like higher-order functions, how to handle impure functions, and lastly how to design an application using Elixir and functional programming principles. By the end, you will be able to write basic Elixir programs that follow the functional programming paradigm.
Elixir is a functional programming language that runs in the Erlang VM, a powerful environment to run distributed systems. This ...Show More

WHAT YOU'LL LEARN

You will learn how to create conditional code with functions.
You will learn higher-order functions in Elixir.
You will explore how to model data, create contracts, and achieve polymorphism using Elixir.
You will learn how to make applications in Elixir.
You will learn how to create conditional code with functions.

Show more

Content

1.

Getting Started

2 Lessons

Get familiar with functional programming concepts and Elixir basics for reliable software.

2.

Introduction to Functional Programming

5 Lessons

Look at functional programming benefits over imperative, emphasizing immutability, and clear, maintainable code.

3.

Working with Variables and Functions

13 Lessons

Work your way through variables and functions in Elixir, covering data types, scopes, and closures.

4.

Using Pattern Matching to Control Program Flow

10 Lessons

Apply your skills to control program flow with pattern matching and functional constructs in Elixir.

5.

Diving into Recursion

11 Lessons

Solve problems in recursion including bounded, transforming lists, tail-calls, and unbounded recursion.

6.

Using Higher-Order Functions

11 Lessons

See how higher-order functions in Elixir simplify operations on lists, files, and processes.

7.

Designing Your Elixir Applications

11 Lessons

Build on Elixir project setup, struct creation, polymorphism, and module behaviors for robust applications.

8.

Handling Impure Functions

8 Lessons

Step through managing impure functions, control-flow strategies, and error handling in Elixir.

9.

Conclusion

1 Lessons

Get started with creating powerful tools using Elixir and pursue advanced learning.

10.

Appendices

2 Lessons

Go hands-on with Elixir installation and enriching game dynamics through creative room triggers.
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Developed by MAANG Engineers
Every Educative lesson is designed by a team of ex-MAANG software engineers and PhD computer science educators, and developed in consultation with developers and data scientists working at Meta, Google, and more. Our mission is to get you hands-on with the necessary skills to stay ahead in a constantly changing industry. No video, no fluff. Just interactive, project-based learning with personalized feedback that adapts to your goals and experience.

Trusted by 2.7 million developers working at companies

Hands-on Learning Powered by AI

See how Educative uses AI to make your learning more immersive than ever before.

AI Prompt

Build prompt engineering skills. Practice implementing AI-informed solutions.

Code Feedback

Evaluate and debug your code with the click of a button. Get real-time feedback on test cases, including time and space complexity of your solutions.

Explain with AI

Select any text within any Educative course, and get an instant explanation — without ever leaving your browser.

AI Code Mentor

AI Code Mentor helps you quickly identify errors in your code, learn from your mistakes, and nudge you in the right direction — just like a 1:1 tutor!

Free Resources

FOR TEAMS

Interested in this course for your business or team?

Unlock this course (and 1,000+ more) for your entire org with DevPath