Chapter 20. Advanced programming
This chapter covers
- A deeper dive into the R language
- Using R’s OOP features to create generic functions
- Tweaking code to run more efficiently
- Finding and correcting programming errors
Previous chapters introduced various topics that are important for application development, including data types (section 2.2), control flow (section 5.4), and function creation (section 5.5). This chapter will review these aspects of R as a programming language—but from a more advanced and detailed perspective. By the end of this chapter, you’ll have a better idea of how the R language works.
We’ll start with a review of objects, data types, and control flow before moving on to details of function creation, including the role of scope and environments. The chapter introduces R’s approach to object-oriented programming and discusses the creation of generic functions. Finally, we’ll go over tips for writing efficient code-generating and debugging applications. A mastery of these topics will help you to understand the code in other people’s applications and aid you in creating new applications. In chapter 21, you’ll have an opportunity to put these skills into practice by creating a useful package from start to finish.