Hacker News with Generative AI: Object-Oriented Programming

Pharo (pharo.org)
Pharo is a pure object-oriented programming language and a powerful environment, focused on simplicity and immediate feedback (think IDE and OS rolled into one).
Thinking in Actors – Part 3 – Using the Actor Model to Track Aircraft (jeremycarterau.substack.com)
Previously we outlined the three pillars of the virtual actor: Ownership, Lifecycle and Transaction. I also briefly introduced a few techniques we can use to help us model our actors. Now, we will put it all together and model a system that allows us to track aircraft in real-time.
Issues with object-oriented programming in Guile (2022) (dthompson.us)
Scheme is often thought of as a functional programming language, but really it is a multi-paradigm language, including object-oriented programming.
Implementing a simple object system from scratch in Ruby (metacircu1ar.github.io)
“What I cannot create, I do not understand.” – Richard Feynman
Exploring PHP Lazy Objects: A Practical Implementation (dailyrefactor.com)
One of the new features in PHP 8.4 is Lazy Objects, which are part of the PHP OOP model.
A C++ Mixin System (jennyjams.net)
I've had this idea in the back of my head for a while of pervasively using mixins to add code and logic for more high level concepts, although this gets somewhat close to Rust style traits (and C++ concepts). This has existed in the back of my head for a long time as a way to model a framework or standard library implementaiton while also providing it for user types.
99 Bottles of OOP now available in Python (sandimetz.com)
99 Bottles of OOP is a practical guide to writing cost-effective, maintainable, and pleasing object-oriented code.
OOP is not that bad (osa1.net)
OOP is certainly not my favorite paradigm, but I think mainstream statically-typed OOP does a few things right that are very important for programming with many people, over long periods of time.
Beyond Procedure Calls as Component Glue: Connectors Deserve Metaclass Status (dl.acm.org)
We present the architecture-oriented programming language Objective-S, which goes beyond procedure calls for expressing inter-component connectors (so-called glue code) in order to directly express a wide range of architectural patterns directly in the implementation.
Medley Loops: The Basic System (Lisp Object-Oriented Programming System) [pdf] (interlisp.org)
Alan Kay 80s 2h 40M OOP Talk Remastered [video] (youtube.com)
Benchmarking the CLOS (djhaskin.com)
Python Data Model (python.org)
Objects are Python’s abstraction for data. All data in a Python program is represented by objects or by relations between objects. (In a sense, and in conformance to Von Neumann’s model of a “stored program computer”, code is also represented by objects.)
Linearizability: A correctness condition for concurrent objects (blogspot.com)
Bootstrap post-collapse OOP technology (Part 1) (marianoguerra.org)
Keynote Speech to the 1996 Oopsla Convention (patternlanguage.com)
When objects are not enough (2021) (tonysm.com)
Finalizers, Guardians, Phantom References (wingolog.org)
Reflection: Smalltalk's Most Enduring Idea? By Bryan Foote (2017) (youtube.com)
What to do if you don't want a default constructor? (sandordargo.com)
Behavior Inheritance in Rust (2021) (wordpress.com)
Deriving Dependently-Typed OOP from First Principles (arxiv.org)
Generalizing Support for Functional OOP in R (r-project.org)
Learning from the Object Oriented Mania (lemire.me)
Learning from the object-oriented mania (lemire.me)
The power of interoperability: Why objects are inevitable (2013) [pdf] (cs.cmu.edu)
Prototypal Inheritance (2008) (crockford.com)
PowerShell: The object-oriented shell you didn't know you needed (chriswarrick.com)
What if null was an Object in Java? (medium.com)
Untangling Spaghetti: Debugging Non-Terminating Object Programs (2009) (tidyfirst.substack.com)