What is an object, really? OR When is an object actually a function?
summary
Ruby code shows that a class is a runtime object and can be cloned, reassigned and stored in variables, so class is an instance and methods live as operations in that object space. Examples use Proc/-> and the ampersand to convert instances into callable blocks and a square-bracket dispatch hack to emulate direct calls, demonstrating instances as partially applied functions. The talk argues domain modeling suits objects but transformations suit functions, and recommends modeling model→view pipelines as composed transforms.
AI-written summary · about
chapters (10)
- 0:00Introduction and background
- 4:45Imperative vs higher-level languages
- 8:17Lambda calculus and convergence
- 13:08Objects as instances of types
- 17:46Classes as instances in Ruby
- 21:56Functions and object dispatch
- 25:06Domain modeling limitations
- 29:00Functions as transformations
- 31:48Objects behaving like functions
- 35:23Summary and Q&A
related talks
56mObjects are Just Objects, Aren't they?
34mThinking in Objects
29mAll I'd Wanted to Know about Ruby's Object Model Starting Out...and Mooar!!!
36mMetaprogramming? Not good enough!
34mThinking in Objects
26mBlending Functional and OO Programming in Ruby
34mAll I'd Wanted To Know About Ruby's Object Model Starting Out...And Mooar!!!
43mLess abstract! Expressing Ruby OOP in pictures
