R Object-Oriented Programming