&gt; instead, we now use ggproto, a new OO system designed specifically for ggplot2<p>And this is why I gave up on R for other things than ad hoc data exploration (don&#x27;t get me wrong; it&#x27;s killer for that). When I finally learned there were no less than four system of OO buried in base R, and still people were unhappy and inventing more, I realised that as far as well structured programming goes, R is kind of beyond help at this point.<p>From what I can tell, my biggest disappointment with ggplot2 is not addressed - the fact that ggplot evaluates all references not found in the data frame to be plotted in the global namespace. The result is that you can&#x27;t actually make reusable, composable plots in a reasonable sane way. It sends the whole illusion of composability that ggplot()&#x27;s &#x27;+&#x27; syntax suggests might be there right down the tubes. My plots were all more reusuable before I ported them to ggplot (ie, in base graphics).<p>Apologies for the whining, and congrats to Hadley!