An overview of functional programming techniques and syntax - in Ruby