4:00 PM Saturday Room: Fireside C
Many developers feel disheartened by functional programming because not only the language is different but the idioms, approach, and patterns also change.
The idea of this session is to present a list of strategies and patterns that are common to imperative programming and object oriented programming and show with examples how to make them work in a functional language.
The talk will include topics like working with immutability, recursion, replacing loops with well-known functions, avoiding null values, using function to short-circuit flow, dependency injection, variadic parameters, generative testing and testing with mocks
The examples will be mainly in Clojure, Scala, Haskell, F# and we may even include Elixir and Lua.