Be introduced to Functional Programming from first principles. Rob Norris at Scala Days New York demonstrated how to not sacrifice the benefits of equational reasoning when recovering the expressiveness of imperative programming.
So if you're a Functional Programming enthusiast check it out and learn more using effects.
The foundation of functional programming is values, pure functions, and function composition; but this lean model of computation seems to abandon real-world concerns such as partiality, exceptions, logging, mutable state, and so on. This talk introduces FP from first principles and demonstrates how we recover the expressiveness of imperative programming without sacrificing the benefits of equational reasoning, via effects.
About Rob Norris
I have been programming for more than 35 years and nothing has improved the quality and maintainability of my code more than adopting typed FP. I think all programmers can benefit from learning the basics, and I am dedicated to helping interested people learn.