Chapter 12 Base types

Learning objectives:

  • Understand what OOP means–at the very least for R
  • Know how to discern an object’s nature–base or OO–and type
John Chambers, creator of S programming language
John Chambers, creator of S programming language
Session Info
library("DiagrammeR")
utils::sessionInfo()
#> R version 4.4.1 (2024-06-14)
#> Platform: x86_64-pc-linux-gnu
#> Running under: Ubuntu 22.04.5 LTS
#> 
#> Matrix products: default
#> BLAS:   /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3 
#> LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.20.so;  LAPACK version 3.10.0
#> 
#> locale:
#>  [1] LC_CTYPE=C.UTF-8       LC_NUMERIC=C           LC_TIME=C.UTF-8       
#>  [4] LC_COLLATE=C.UTF-8     LC_MONETARY=C.UTF-8    LC_MESSAGES=C.UTF-8   
#>  [7] LC_PAPER=C.UTF-8       LC_NAME=C              LC_ADDRESS=C          
#> [10] LC_TELEPHONE=C         LC_MEASUREMENT=C.UTF-8 LC_IDENTIFICATION=C   
#> 
#> time zone: UTC
#> tzcode source: system (glibc)
#> 
#> attached base packages:
#> [1] stats     graphics  grDevices utils     datasets  methods   base     
#> 
#> other attached packages:
#>  [1] memoise_2.0.1        patchwork_1.3.0      scales_1.3.0        
#>  [4] rlang_1.1.4          reshape2_1.4.4       deSolve_1.40        
#>  [7] lubridate_1.9.3      forcats_1.0.0        stringr_1.5.1       
#> [10] purrr_1.0.2          readr_2.1.5          tidyr_1.3.1         
#> [13] tibble_3.2.1         tidyverse_2.0.0      ggplot2_3.5.1       
#> [16] palmerpenguins_0.1.1 gt_0.11.0            dplyr_1.1.4         
#> [19] lobstr_1.1.2         DiagrammeR_1.0.11   
#> 
#> loaded via a namespace (and not attached):
#>  [1] emoji_15.0         gtable_0.3.5       xfun_0.47          bslib_0.8.0       
#>  [5] htmlwidgets_1.6.4  visNetwork_2.1.2   bench_1.1.3        tzdb_0.4.0        
#>  [9] vctrs_0.6.5        tools_4.4.1        generics_0.1.3     curl_5.2.3        
#> [13] parallel_4.4.1     fansi_1.0.6        highr_0.11         pkgconfig_2.0.3   
#> [17] RColorBrewer_1.1-3 lifecycle_1.0.4    compiler_4.4.1     farver_2.1.2      
#> [21] textshaping_0.4.0  munsell_0.5.1      codetools_0.2-20   htmltools_0.5.8.1 
#> [25] sass_0.4.9         yaml_2.3.10        profmem_0.6.0      pillar_1.9.0      
#> [29] crayon_1.5.3       jquerylib_0.1.4    cachem_1.1.0       tidyselect_1.2.1  
#> [33] digest_0.6.37      stringi_1.8.4      bookdown_0.40      labeling_0.4.3    
#> [37] fastmap_1.2.0      grid_4.4.1         colorspace_2.1-1   cli_3.6.3         
#> [41] magrittr_2.0.3     utf8_1.2.4         withr_3.0.1        prettyunits_1.2.0 
#> [45] bit64_4.5.2        timechange_0.3.0   rmarkdown_2.28     bit_4.5.0         
#> [49] ragg_1.3.3         hms_1.1.3          evaluate_1.0.0     knitr_1.48        
#> [53] viridisLite_0.4.2  Rcpp_1.0.13        glue_1.7.0         xml2_1.3.6        
#> [57] rstudioapi_0.16.0  vroom_1.6.5        jsonlite_1.8.9     R6_2.5.1          
#> [61] plyr_1.8.9         systemfonts_1.1.0