Portland Perl Mongers - Highly Functional Programming
Most classes require prior sign up. Please check in at the front desk when you arrive to let them know you are here for the class. Bags must be checked at the front entrance.
Highly Functional Programming
Speaker: Eric Wilhelm
Functional programming is very pure and elegant when nothing can change, and the computer can reason about your code for you -- in theory. Reality is messier, but Perl and other high-level languages support pure functions as a subset of the procedural and OO paradigms, so why don't we use them more? Functional techniques are good problem solving tools, useful for event-driven programs, and can be mixed into traditional OO and procedural codebases for better code reuse and testability.
In this talk, we'll look at some benefits of purely functional programming from a pragmatic and procedural viewpoint. There will be absolutely no mention of monads because we will just ride our lambdas through the mud and get it done. We'll see how good programming practices tend to suggest stateless and functional approaches. We'll examine techniques for refactoring which separate functions from state changes and allow you to better test and reason about your code. Finally, we'll look at language interpreters and discuss how technology might be able to help get even more benefits out of highly functional programming approaches.
This is a preview of an upcoming OSCON talk.
As always, meet us at the Lucky Lab for some beer and good company following the meeting.