InfoQ Homepage OOP Content on InfoQ
-
Find the Right Abstraction Level for Your Tests
Gerard Meszaros advises on using the right abstraction level and automation tools when creating unit or system-level tests.
-
Coding in Style: How to Wield Scala in the Trenches
Josh Suereth discusses Scala: expressions, abstracting behaviors, FP & OOP, Futures & Promises, libraries with implicit classes and value classes, tracking lexical state with implicit values.
-
I Want to Believe (not sure yet)
Marc-Daniel Ortega shares code snippets showing how to implement some logic in a functional language inspired by “Functional Programming in Scala”, avoiding the OOP influence.
-
Who's Afraid of Object Algebras?
Tijs van der Storm discusses object algebras as a solution to the expression problem – the inability to extend functional programming languages.
-
Dancing with Symmetry to Harness the Power of Complexity: Subjective Programming in Context
The authors introduce a new language paradigm meant to enhance OOP with multi-dimensional context, providing details on context-based dispatch, and showing a glimpse of their early prototype.
-
Exercises in Style
Crista Lopes writes a program in multiple styles -monolithic/OOP/continuations/relational/Pub-Sub/Monads/AOP/Map-reduce- showing the value of using more than a style in large scale systems.
-
Protocols, Functors and Type Classes
Creighton Kirkendall discusses how polymorphism is implemented in Clojure, Ocaml, Haskell and Scala.
-
Data, Visibility, and Abstraction
Stuart Sierra introduces some general guidelines for designing systems which make their data and abstractions more transparent to developers, using code examples in Clojure.
-
Engines of Abstraction
Jim Duey surveys several abstraction techniques that can help in writing reusable code in Clojure.
-
Reflections on Reflection
Jim Coplien believes that we have done OOP the wrong way for 40 years, and suggests an approach to reflection based on the DCI paradigm and influenced by the human society.
-
Grace: An Open-source Educational OO Language
Michael Homer introduces Grace, an educational OO language used to teach programming to students.
-
A Taxonomy of Scala
Jamie Allen explains some of the terminology encountered by Scala developers and not only: OO features, pattern matching, functional programming, actors, futures, tuples, implicits, type theory, etc.