Functional programming is an alternative paradigm to OOP. Instead of applications being a composition of objects passing messages, our applications compose functions.
- Exploring Functional Programming with Ruby https://jasoncharnes.com/functional-programming-ruby
- How to Use Lambdas in Ruby https://scoutapm.com/blog/how-to-use-lambdas-in-ruby#:~:text=A%20lambda%20function%20can%20then,'first%2Dclass%20functions'.
Lambdas are a powerful feature of the Ruby language. They allow you to wrap logic and data into a portable package.
-
"A lambda function encapsulates control flow, parameters and local variables into a single package assigned to a variable or used inline. If assigned to a variable, it can be passed to other functions or stored in data structures, just like a more typical variable containing a string or float. A lambda function can then be executed far from the code location where it was defined. Lambda functions are often called anonymous functions or a function literal."
-
Functional & Object Oriented Programming in Ruby https://thoughtbot.com/upcase/videos/functional-object-oriented-programming-in-ruby
-
Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim Weirich https://www.youtube.com/watch?v=FITJMJjASUs&t=610s
-
RubyConf 2019 - The Functional Rubyist by Joe Leo https://www.youtube.com/watch?v=BV1-Z38ZWQU
-
Lambda World 2018 - What Haskell Taught Us When We Weren't Looking - Eric Torreborre https://www.youtube.com/watch?v=Pmhap3acJvs&t=788s
-
GOTO 2018 • Functional Programming in 40 Minutes • Russ Olsen https://www.youtube.com/watch?v=0if71HOyVjY
-
FP vs OO: Choose Two by Brian Goetz https://www.youtube.com/watch?v=8GWZE2Y2O9E
-
RailsConf 2019 - Sprinkles of Functional Programming by John Schoeman https://www.youtube.com/watch?v=toSedSFnzOE
-
Full Stack Fest 2015: Blending Functional and OO Programming in Ruby, by Piotr Solnica https://www.youtube.com/watch?v=rMxurF4oqsc
-
RailsConf 2022 - Functional Programming in Plain Terms by Eric Weinstein https://www.youtube.com/watch?v=W2tmA4V0Bjk&list=PLbHJudTY1K0f1WgIbKCc0_M-XMraWwCmk&index=65&ab_channel=RubyCentral
Haskell Guide (RU) https://www.ohaskell.guide/init.html