EARL Conference.

Colin Gillespie

Chief Technology Officer, Jumping Rivers

Beyond Functions: Choosing the Right Object-Oriented Paradigm for Business R Development

Surprisingly, R has a rich landscape of object-oriented programming (OOP) paradigms. Each with their distinct philosophies, trade-offs, and practical implications for teams building production systems. This talk cuts through the complexity to help R developers and data engineers make informed architectural decisions in a business context.

We begin with a concise tour of R's five principal OOP systems: S3, S4, Reference Classes, R6 and S7. Rather than treating these as academic curiosities, we examine each through the lens of real-world business software: How easy is it to onboard a new team member? Who uses these classes? Are some of them obsolete? S3's informality makes it the workhorse of CRAN and a natural fit for lightweight, package-style development. While S4 was developed to bring rigour through formal class definitions and multiple dispatch. It’s particularly popular in bioinformatics. R6, drawing on more familiar object-oriented conventions from languages like Python and Java, has emerged as the pragmatic choice for engineers building stateful applications, REST API clients, or reusable infrastructure components.

The talk concludes with a practical decision framework: a set of questions teams can ask to match their use case to the right paradigm. Attendees will leave with a clearer mental model of R's OOP landscape and concrete guidance for writing maintainable, scalable business code.