Why are there two kinds of functions in Elixir?

I’m learning Elixir and wonder why it has two types of function definitions: functions defined in a module with def, called using myfunction(param1, param2) anonymous functions defined with fn, called using myfn.(param1, param2) Only the second kind of function seems to be a first-class object and can be passed as a parameter to other functions. … Read more