Fonte : InfoQ Palestra: Writing extensible functional code
In this talk, we are going to present the concept of Protocols (Elixir & Clojure) and/or TypeClasses (Haskell & friends) and relate them to alternatives in other languages (e.g. Mixins in Ruby and Extension Methods in C#). We will learn how to tap on the advantages of associating “data & behavior” we’re already familiar in oop — but only where it makes sense! — in functional programs.
By Renan Ranelli