Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/julianpasquale/ruby-functional-programming
This repository includes the slide deck and code examples for my presentation about Functional programming in Ruby
https://github.com/julianpasquale/ruby-functional-programming
functional functional-programming ruby
Last synced: 21 days ago
JSON representation
This repository includes the slide deck and code examples for my presentation about Functional programming in Ruby
- Host: GitHub
- URL: https://github.com/julianpasquale/ruby-functional-programming
- Owner: JulianPasquale
- License: mit
- Created: 2022-09-14T13:39:44.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-02-02T20:28:25.000Z (almost 2 years ago)
- Last Synced: 2024-10-11T23:33:07.520Z (about 1 month ago)
- Topics: functional, functional-programming, ruby
- Language: JavaScript
- Homepage: https://julianpasquale.github.io/ruby-functional-programming/
- Size: 48.3 MB
- Stars: 5
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Ruby Functional Programming
## Videos
- [RubyConf 2019 - The Functional Rubyist by Joe Leo](https://www.youtube.com/watch?v=BV1-Z38ZWQU)
- [RubyConf 2015 - A Muggle's Guide to Tail Call Optimization in Ruby by Danny Guinther](https://www.youtube.com/watch?v=6Tblgvvit4E)
- [Object Oriented Programming vs Functional Programming - Continuous Delivery](https://www.youtube.com/watch?v=wyABTfR9UTU)
- ["O.O.P. Looks Like Functional Programming When Done Right!" - Continuous Delivery - Michael Feathers](https://www.youtube.com/watch?v=j71n33A0CkI)## Articles
- [Functional programming - Wikipedia](https://en.wikipedia.org/wiki/Functional_programming)
- [Functional Programming Paradigm - geeksforgeeks](https://www.geeksforgeeks.org/functional-programming-paradigm/)
- [Functional Programming In Ruby- Ruby guides](https://www.rubyguides.com/2018/01/functional-programming-ruby/)
- [Functional programming in Ruby - womanonrails](https://womanonrails.com/functional-programming-ruby)## High order and First class functions
- [First-class function - Wikipedia](https://en.wikipedia.org/wiki/First-class_function)
- [Higher-order function - Wikipedia](https://en.wikipedia.org/wiki/Higher-order_function)
- [The Ultimate Guide to Blocks, Procs & Lambdas - Jesus Castello](https://www.rubyguides.com/2016/02/ruby-procs-and-lambdas/)## Function composition
- [Proc << and >> - ruby-doc](https://ruby-doc.org/core-2.6/Proc.html#method-i-3E-3E)
- [Proc#compose and Enumerator#chain - Brandon Weaver](https://medium.com/@baweaver/exploring-ruby-2-6-proc-compose-and-enumerator-chain-49f10e237542)## Closures
- [Closures - Mozilla](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures)
- [Functional Programming in Ruby — Closures - Brandon Weaver](https://medium.com/@baweaver/functional-programming-in-ruby-closures-ac80547eb40d)
- [Closures in Ruby - geeksforgeeks](https://www.geeksforgeeks.org/closures-in-ruby/)
- [Ruby Blocks Simplified - Julianna Roen from Gusto](https://engineering.gusto.com/ruby-blocks-simplified/)## Curry and partial function execution
- [Proc#curry - ruby-doc](https://ruby-doc.org/core-2.6/Proc.html#method-i-curry)
- [Partial Application and Currying - riptutorialr](https://riptutorial.com/ruby/example/27063/partial-application-and-currying)## Referencial transparency
- [Referential transparency - Wikipedia](https://en.wikipedia.org/wiki/Referential_transparency)
- [I/O in pure functions - Wikipedia](https://en.wikipedia.org/wiki/Pure_function#I/O_in_pure_functions)
- [I/O monad (Haskell) - Wikipedia](https://en.wikipedia.org/wiki/Monad_(functional_programming)#IO_monad)
- [Pure Functions and I/O - Alvin Alexander](https://alvinalexander.com/scala/fp-book/pure-functions-and-io-input-output/)
- [Immutable Enumerators with Tom Stuart](https://graceful.dev/courses/the-freebies/modules/functional-programming/topic/episode-263-immutable-enumerators/)## Recursion
- [Tail Call Optimization in Ruby - Nithin Bekal](https://nithinbekal.com/posts/ruby-tco/)## Lazy evaluation
- [Infinite Sequences in Ruby - Ross Kaffenberger](https://rossta.net/blog/infinite-sequences-in-ruby.html)
- [How Lazy Evaluation Works in Ruby - Gernot Gradwohl](https://betterprogramming.pub/how-lazy-evaluation-works-in-ruby-a90237e99ac3)
- [Enumerator - ruby-doc](https://ruby-doc.org/core-2.6/Enumerator.html)
- [Enumerator::Lazy - ruby-doc](https://ruby-doc.org/core-2.6/Enumerator/Lazy.html)## Extra
- [dry-monads](https://dry-rb.org/gems/dry-monads/1.3/)
- [Pattern Matching](https://docs.ruby-lang.org/en/3.0/syntax/pattern_matching_rdoc.html)