4 ms·
What you're used to seeing might be better described as "class-oriented programming", i.e. Java's take on OOP. Once you realize that `this` is just an implicit
by notduncansmith 10y ago
What you're used to seeing might be better described as "class-oriented programming", i.e. Java's take on OOP. Once you realize that `this` is just an implicit parameter and objects are just closures (look at Javascript's OOP for a good illustration of this principle), and you start to think about how objects can interact reliably across interfaces/languages/networks/failures, you more-or-less inevitably end up at "message-oriented programming", i.e. Smalltalk's take on OOP, wrapped up in declarative/functional APIs.
Disclaimer: these ideas are all unoriginal and some of them directly borrowed from other commenters in this thread.
- digi_owl 10y agoAll this makes unix core tools and shell scripts sound OO.
- gnaritas 10y agoNot really, they're more functional, they have textual input and output, and can be chained together, but they don't really trade meaningful messages back and forth. Processes can be thought of as objects, and signals as messages, but the set is not extensible while OO allows the developer to define the messages.