SlideShare a Scribd company logo
1 of 9
Higher Order Ruby Tom Crinson @MrJaba
Higher  Order  Programming?
Callbacks.  Dispatch Tables. Infinite Streams. (with just a smidge of Currying)
Callbacks
Dispatch  Tables
Infinite  Streams
Newton – Raphson Method
CURRYING lambda { |a, b, c| ... } lambda { |a| lambda { |b| lambda { |c| ... } } }
Image Credits: http://www.flickr.com/photos/motoyen/1386840251/sizes/o/in/photostream/ http://www.flickr.com/photos/robbn1/4284266833/sizes/l/in/photostream/ http://www.flickr.com/photos/dps/136564771/ http://www.flickr.com/photos/bbaunach/398807056/sizes/o/in/photostream/ http://www.flickr.com/photos/thebrownhouse/4599233853/sizes/l/in/photostream/ Further Reading: http://blog.grayproductions.net/categories/higherorder_ruby Higher Order Perl – Mark Jason Dominus Code: http://github.com/mrjaba

More Related Content

Similar to Higher Order Ruby

Bridging the Gap - The Future of Learning
Bridging the Gap - The Future of LearningBridging the Gap - The Future of Learning
Bridging the Gap - The Future of LearningClint Hamada
 
Pedagogy, Policing or Preventing Plagiarism? Experiences with facilitating Pr...
Pedagogy, Policing or Preventing Plagiarism? Experiences with facilitating Pr...Pedagogy, Policing or Preventing Plagiarism? Experiences with facilitating Pr...
Pedagogy, Policing or Preventing Plagiarism? Experiences with facilitating Pr...Hazel Owen
 
Pro Tools vs Logic Pro
Pro Tools vs Logic ProPro Tools vs Logic Pro
Pro Tools vs Logic Prochache89
 
Connecting Communities and Libraries: Participatory Learning and Libraries (...
Connecting Communities and Libraries:  Participatory Learning and Libraries (...Connecting Communities and Libraries:  Participatory Learning and Libraries (...
Connecting Communities and Libraries: Participatory Learning and Libraries (...Buffy Hamilton
 
OSM-GB - The Elevator Pitch
OSM-GB - The Elevator PitchOSM-GB - The Elevator Pitch
OSM-GB - The Elevator PitchSteven Feldman
 
Austin cassandra meetup
Austin cassandra meetupAustin cassandra meetup
Austin cassandra meetupgdusbabek
 
Using ArcGIS Server with Ruby on Rails
Using ArcGIS Server with Ruby on RailsUsing ArcGIS Server with Ruby on Rails
Using ArcGIS Server with Ruby on RailsDave Bouwman
 
The web is too slow
The web is too slow The web is too slow
The web is too slow Andy Davies
 
The Value of Leadership, the Leadership of Value: Remaining Relevant in times...
The Value of Leadership, the Leadership of Value: Remaining Relevant in times...The Value of Leadership, the Leadership of Value: Remaining Relevant in times...
The Value of Leadership, the Leadership of Value: Remaining Relevant in times...Peter Bromberg
 
Big Data, Big Local
Big Data, Big LocalBig Data, Big Local
Big Data, Big LocalTyler Bell
 
Pkn slides-tony yet-alice-in-what-if-land
Pkn slides-tony yet-alice-in-what-if-landPkn slides-tony yet-alice-in-what-if-land
Pkn slides-tony yet-alice-in-what-if-landTony Yet
 
Creating User Friendly Joomla! Websites and Forms [English]
Creating User Friendly Joomla! Websites and Forms [English]Creating User Friendly Joomla! Websites and Forms [English]
Creating User Friendly Joomla! Websites and Forms [English]ThemePartner
 
Fix price fix scope fix date-pecha_kuchas-journeeagile2014
Fix price fix scope fix date-pecha_kuchas-journeeagile2014Fix price fix scope fix date-pecha_kuchas-journeeagile2014
Fix price fix scope fix date-pecha_kuchas-journeeagile2014Gilles Scokart
 

Similar to Higher Order Ruby (18)

Bridging the Gap - The Future of Learning
Bridging the Gap - The Future of LearningBridging the Gap - The Future of Learning
Bridging the Gap - The Future of Learning
 
Pedagogy, Policing or Preventing Plagiarism? Experiences with facilitating Pr...
Pedagogy, Policing or Preventing Plagiarism? Experiences with facilitating Pr...Pedagogy, Policing or Preventing Plagiarism? Experiences with facilitating Pr...
Pedagogy, Policing or Preventing Plagiarism? Experiences with facilitating Pr...
 
Pro Tools vs Logic Pro
Pro Tools vs Logic ProPro Tools vs Logic Pro
Pro Tools vs Logic Pro
 
Prayer
PrayerPrayer
Prayer
 
It's your library@amsnths
It's your library@amsnthsIt's your library@amsnths
It's your library@amsnths
 
Connecting Communities and Libraries: Participatory Learning and Libraries (...
Connecting Communities and Libraries:  Participatory Learning and Libraries (...Connecting Communities and Libraries:  Participatory Learning and Libraries (...
Connecting Communities and Libraries: Participatory Learning and Libraries (...
 
Popular GIS
Popular GISPopular GIS
Popular GIS
 
OSM-GB - The Elevator Pitch
OSM-GB - The Elevator PitchOSM-GB - The Elevator Pitch
OSM-GB - The Elevator Pitch
 
Austin cassandra meetup
Austin cassandra meetupAustin cassandra meetup
Austin cassandra meetup
 
Joining Up Content
Joining Up ContentJoining Up Content
Joining Up Content
 
Using ArcGIS Server with Ruby on Rails
Using ArcGIS Server with Ruby on RailsUsing ArcGIS Server with Ruby on Rails
Using ArcGIS Server with Ruby on Rails
 
The web is too slow
The web is too slow The web is too slow
The web is too slow
 
The Value of Leadership, the Leadership of Value: Remaining Relevant in times...
The Value of Leadership, the Leadership of Value: Remaining Relevant in times...The Value of Leadership, the Leadership of Value: Remaining Relevant in times...
The Value of Leadership, the Leadership of Value: Remaining Relevant in times...
 
Oow 2008 Final
Oow 2008 FinalOow 2008 Final
Oow 2008 Final
 
Big Data, Big Local
Big Data, Big LocalBig Data, Big Local
Big Data, Big Local
 
Pkn slides-tony yet-alice-in-what-if-land
Pkn slides-tony yet-alice-in-what-if-landPkn slides-tony yet-alice-in-what-if-land
Pkn slides-tony yet-alice-in-what-if-land
 
Creating User Friendly Joomla! Websites and Forms [English]
Creating User Friendly Joomla! Websites and Forms [English]Creating User Friendly Joomla! Websites and Forms [English]
Creating User Friendly Joomla! Websites and Forms [English]
 
Fix price fix scope fix date-pecha_kuchas-journeeagile2014
Fix price fix scope fix date-pecha_kuchas-journeeagile2014Fix price fix scope fix date-pecha_kuchas-journeeagile2014
Fix price fix scope fix date-pecha_kuchas-journeeagile2014
 

More from Tom Crinson

Destructuring demystified
Destructuring demystifiedDestructuring demystified
Destructuring demystifiedTom Crinson
 
Hidden treasures of Ruby
Hidden treasures of RubyHidden treasures of Ruby
Hidden treasures of RubyTom Crinson
 
Javascript Basics for Advertisers
Javascript Basics for AdvertisersJavascript Basics for Advertisers
Javascript Basics for AdvertisersTom Crinson
 
A few questions on MongoDB
A few questions on MongoDBA few questions on MongoDB
A few questions on MongoDBTom Crinson
 
Object Oriented Design Principles - SOLID
Object Oriented Design Principles - SOLIDObject Oriented Design Principles - SOLID
Object Oriented Design Principles - SOLIDTom Crinson
 
Test Driven Development: Why I hate it; but secretly love it.
Test Driven Development: Why I hate it; but secretly love it. Test Driven Development: Why I hate it; but secretly love it.
Test Driven Development: Why I hate it; but secretly love it. Tom Crinson
 

More from Tom Crinson (7)

Destructuring demystified
Destructuring demystifiedDestructuring demystified
Destructuring demystified
 
Hidden treasures of Ruby
Hidden treasures of RubyHidden treasures of Ruby
Hidden treasures of Ruby
 
Crystal Agile
Crystal AgileCrystal Agile
Crystal Agile
 
Javascript Basics for Advertisers
Javascript Basics for AdvertisersJavascript Basics for Advertisers
Javascript Basics for Advertisers
 
A few questions on MongoDB
A few questions on MongoDBA few questions on MongoDB
A few questions on MongoDB
 
Object Oriented Design Principles - SOLID
Object Oriented Design Principles - SOLIDObject Oriented Design Principles - SOLID
Object Oriented Design Principles - SOLID
 
Test Driven Development: Why I hate it; but secretly love it.
Test Driven Development: Why I hate it; but secretly love it. Test Driven Development: Why I hate it; but secretly love it.
Test Driven Development: Why I hate it; but secretly love it.
 

Higher Order Ruby