🐧
Practical Elixir
  • ðŸĨWelcome!
  • 🐷Prerequisites
  • ðŸļWhy functional programming?
  • ðŸĶ‹History of Elixir
  • 🐙Elixir fundamentals
    • 🐝Types
      • 🐒Basic types
      • ðŸŠąList and tuples
      • ðŸĶ‰Keyword lists and maps
    • ðŸĶ€Pattern matching
    • ðŸŪModules
    • ðŸĶŽFunctions
    • ðŸĶ­Conditionals
    • ðŸģRecursion
    • 🐖Enumerables
    • ðŸĶMix
  • ðŸĶ…Web development with Elixir
    • ðŸĶDirectory structure
    • ðŸĶĪFirst steps
    • ðŸĶ‡Phoenix basics
    • ðŸĢViewing to-do list
    • 🐔Adding dynamic behavior
    • ðŸĶ†Data persistence
  • 🐍Resources
Powered by GitBook
On this page
  • Why Elixir?
  • Using this guide
  • Who am I?
  • Contact me
Edit on GitHub

Welcome!

NextPrerequisites

Last updated 1 year ago

Functional programming can be an intimidating subject to approach. Your first encounter with it might be during CS2030S or hearing about Haskell. While using functional programming involves a shift in the way you think of problems, it does not have to be as intimidating as it seems.

In this guide, I will be diving into the application of functional programming in web development using my favorite programming language: !

Why Elixir?

Besides being my favorite programming language, I think Elixir provides an incredibly gentle introduction to core . It does not have an overly strict type system or mandate pure functions for everything. While these may go against the very purist idea of functional programming, it lowers the barrier to entry to functional programming and applying it to real-world projects.

Using this guide

This guide aims to...

Allow you to understand fundamental Elixir syntax to follow along

Give you a new perspective on what functional programming is

Develop a basic intuition for solving problems in a "functional programming" way

This guide does not...

Try to convince you that functional programming is by any means easier or superior to other paradigms

Provide a deep explanation of various constructs in Elixir like macros and IO

Teach you everything about Phoenix, for that, please use the official documentation instead

Claim that Elixir is the only production ready functional programming language, it is just a personal preference!

Who am I?

Contact me

I'm a computer science undergraduate from the National University of Singapore and a coreteam member of NUS Hackers. I started using Elixir in 2020 for Advent of Code and fell in love with it. Since then, I have been using Elixir for and have written several articles about Elixir (some of which have been featured on newsletters!). I also did my summer 2023 internship using Elixir at where I was using Elixir for full-stack development of the web portal and was exposed to working with Elixir on a production level!

If you have enjoyed reading this guide, wish to ask any clarifying questions, spotted an issue with the guide, or just wanna chat, do drop me an email at .

ðŸĨ
Jia Hao,
personal projects
Betafi
woojiahao1234@gmail.com
✅
✅
✅
❌
❌
❌
❌
Elixir
functional programming language principles