The technical term for magic is ”object orientation”. Object orientation is voluntary in R, and in fact there are two different versions of it in R. They are called — for historical reasons — S3 methods and S4 methods.
Need to know
As a user of R there is very little that you need to know about object orientation. The main point of object orientation is to make things easier for the user. You don’t need to memorize a lot of function names, you can merely use plot to get an appropriate picture for a wide range of types of objects.
The main way that object orientation can be a disadvantage is that print is a generic function so what is printed is not necessarily a precise representation of the actual object. To see what an outline of what an object really looks like, you can do:
> str(x)
Many objects with a class are really a list. You can see the names of that list with:
> names(x)
You can always see the true structure of an object with:
> print(unclass(x))
Resources
Circle 7 provides a cursory introduction to object orientation in R.
Back to top level of Impatient R
jun 25, 26
Several packages on CRAN provide (or relate to) interfaces between databases and R. Here is a summary, mostly in the words of the package descriptions. Remember that package names are [...]
jun 25, 26
Chapter 32 of Tao Te Programming advises you to make bricks instead of monoliths. Here is an example. The example is written with the syntax of R and is a [...]
jun 25, 26
There is a mechanism that allows variability in the arguments given to R functions. Technically it is ellipsis, but more commonly called ”…”, dots, dot-dot-dot or three-dots. Basics The three-dots [...]

