Why is functional programming becoming such a hot topic? Just what _is_ functional programming anyway? And when am I going to have to know about it? In this talk Uncle Bob will walk you through the rationale that is driving the current push towards functional programming. He'll also introduce you to the basics by walking through some simple Clojure code.
We developers often take IDEs for granted. But have you ever wondered what’s going on under the surface? I’d like to pull back the curtains on the inner workings of the modern IDE, see where the state of the art is now, and look where it’s heading for the future. We’ll take a tour of the wealth of features provided, and take a deep dive into how the IDE knows so much about your code, and how it can provide such fast navigation and safe refactorings. We’ll also look at why some people are choosing to move away from IDEs and back to text editors, and what the future holds, with projects such as Nitra, Roslyn and Lighttable.
Erlang was designed around a set of requirements for telecom systems. They were distributed, massively concurrent systems which had to scale with demand, be capable of handling massive peak loads and never fail. Erlang's features make it perfect for multi-core computers, although it pre-dates them, and for the Internet Age and the Cloud although it pre-dates them as well. This talk will describe how Erlang was developed as a language and system to solve that could solve these problems. It truly demonstrates the benefits of concurrency–oriented programming.
Elixir pipes have captured the imagination of the Elixir community. Joe Armstrong's first blog about the language, Dave Thomas's book title for Programming Elixir, and the creator of the language have all mentioned pipes as a core feature for understanding not just Elixir, but also how functional transformation works. In this talk, we'll learn to use macros to push pipes harder than you ever thought possible. Elixir programmers will learn to write prettier code, and others will learn why functional programming and macros are such a big deal.
You've heard the arguments in favor of functional languages: they make parallel computation easier, help you reason about your program, let you do more with fewer lines of code, etc. But what about the code? To many it's cryptic, arcane, mind boggling -- and the syntax, dating back in some cases 40 years, can be downright hideous!
Can the value of using functional languages make up for the pain associated with them?
In this talk, Garrett will make the case that, when done right, functional programs are stunningly beautiful. And not to mathematicians and logicians -- to normal folk. To the artist, the poet -- to the software craftsman that lives in all of us!
Using the impossibly dated syntax of Erlang, Garrett will dive into writing beautiful functional code. He'll cover these topics:
API design in a functional language
Function and variable names
Proper use of case and if expressions
Managing complex data structures
Common functional patterns
While examples are in Erlang, the lessons of this talk can be applied to other functional languages. If you're new to functional programming, or a seasoned expert, you will see a side of functional programming that is rarely talked about. You'll learn the fundamentals of functional programming in a novel way -- a method that focuses meticulously on clarity, readability, maintainability -- in short, the beauty of functional programming.