Functional programming is a programming paradigm with origins in lambda calculus and the 1930's. Stack Overflow's developer survey 2017 shows that the languages optimized for functional programming are low in popularity. However, the same survey recognizes that developers actually working in Elixir, Clojure, F#, and Haskell, actually love their languages much more than PHP or C developers.
So functional programming is unpopular but fun!
The good news is that it can be applied in a popular language like PHP. Whilst the bad news is that PHP might not be 100% optimized for functional programming, we already have pretty nice libraries of functional primitives for PHP. Accepting functional programming style may help PHP developers develop a bit cleaner or more interesting code. More importantly, it will make it a whole lot easier to pick up an actual functional language or make use of serverless architectures such as AWS Lambda. This session will cover:
- Introduction to lambda calculus
- Basic principles of functional programming
- Overview of the lstrojny/functional-php library
- Performance, compared to imperative programming style
- Reusability, compared to object-oriented coding
- Serverless computing as one of the great applications for functional programming paradigm