Classes and Types in an Ideal Object-Oriented Programming Language
Résumé
Object-oriented programming is now half-a-century old. During the last decades, object-orientation became hegemonic, both in the programming languages and the programmers' usage. Almost all non-object programming languages, such as Lisp, ML, Pascal, Ada,... have, now, their object extension. As a researcher in the field since 1985, I'm of course happy with this situation. However, my Platonic ideal of object-orientation is elevated, and I'm rather disappointed by actual programming languages. None of them satisfies me.
In this talk, a bit provocative, I'll present the basic philosophy of object-orientation, going back to the Greek philosopher Aristotle. I'll then focus on two main features of object-oriented languages, multiple inheritance
and static typing, and show how the divergence of their specifications in the different languages is not a proof of vitality, but instead a symptom of misconception. Eventually, this talk can be viewed as partial specifications of an object-oriented programming language. Since existing languages cannot be modified in order to meet these specifications, because of two many backwards incompatibilities, I encourage young researchers to complete these specifications and develop this ideal object-oriented language.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...