Functional programmers are a unique breed of software development professionals. They have decided that the traditional methods to solving problems are not good enough. In their quest to find the most efficient way to find solutions they eventually stumble upon functional programming. Functional programmers also know they are a minority among their programming peers and don't enjoy the cornucopia of resources available to imperative language developers. That's why Lambda World is such an important conference. Michael Snoyman, our VP of Engineering, spoke to his functional programming peers when he discussed "Everything you didn’t want to know about Monad transformer state".
Monad transformers are often used in Haskell applications to model state, capture results, and deal with explicit exceptions. In order to make these monad transformer stacks work with concurrency primitives, runtime exceptions, and more, we'll often use libraries like lifted-base, lifted-async, monad-control, and exceptions. But contrary to the expectations of many, surprising things can happen with the implicit state of our transformers. Michael's talk explains the problem, demonstrates where surprising behavior pops up and recommends ways to structure your libraries and applications to sidestep the issue entirely.
Since we are on the topic of conferences, I thought I'd share some future conference dates with you as well.
|December 17, 2017||f(by) - Functional Programming Conference||Speaker: Michael Snoyman|
|February 22, 2018||Lambda Days 2018||
Speaker: Tom Sydney Kerckhove
FP Complete has been a strong advocate for Functional Programming and specifically, the Haskell programming language since it began operations in 2012. If you haven't guessed it yet. The FP in "FP Complete" stands for functional programming. To take you even deeper into the rabbit hole the notion of FP Complete comes from the concept of NP-Complete . By definition, NP-complete problems are in NP, the set of all decision problems whose solutions can be verified in polynomial time. So what does this all mean? We are a bunch of brainiacs that love to solve complex problems using functional programming.
We also love to make contributions to the Haskell community and continually strive to make contributions that create better tools and educational materials for Haskellers. A good place to get started is our introduction to Haskell page. In an effort to create better tools and educational experiences we also need to understand what Haskellers are doing and the challenges they face. That's why we are conducting our second Haskell Survey. We conducted another survey back in October 2015. We are seeking honest feedback from the Haskell community. If you would like to provide your feedback, you can complete our survey in under 12 minutes and make the functional programming world a better place.
The survey is only open for 30 days which ends on December 16th. Everyone who participates in the survey will receive a copy of the results along with a small token of our appreciation. Please share this information with your peers because the more people that participate the better the results.
If you are interested in seeing the results, fill out the form below.
Do you like this blog post and need help with industrial Haskell, Rust or DevOps? Contact us.