Elixir
Modern alchemy
performed on top of
the Erlang virtual machine
Slide 2
Slide 2 text
José Valim
Slide 3
Slide 3 text
Elixir - Erlang TNG
Slide 4
Slide 4 text
No content
Slide 5
Slide 5 text
Lennart Fridén
@DevLCSC
Slide 6
Slide 6 text
Warmup
Slide 7
Slide 7 text
Matching and Pinning
Slide 8
Slide 8 text
Recursion
Slide 9
Slide 9 text
The pipe operator
Slide 10
Slide 10 text
Processes
Slide 11
Slide 11 text
lightweight
isolated
concurrent
communicates by passing messages
conceptually no difference between local and
remote processes
Slide 12
Slide 12 text
A simple key-value store
Slide 13
Slide 13 text
No content
Slide 14
Slide 14 text
Providing a client API
Slide 15
Slide 15 text
No content
Slide 16
Slide 16 text
OTP - GenServer
Slide 17
Slide 17 text
No content
Slide 18
Slide 18 text
No content
Slide 19
Slide 19 text
No content
Slide 20
Slide 20 text
No content
Slide 21
Slide 21 text
No content
Slide 22
Slide 22 text
Adding a supervisor
Slide 23
Slide 23 text
It keeps coming back!
Slide 24
Slide 24 text
Macros
Slide 25
Slide 25 text
compile time macros
hygienic - by default does not affect the context
lexical - no global injection of code or macros
can be used to create domain specific languages