- R High Performance Programming
- Aloysius Lim William Tjhi
- 293字
- 2021-08-06 19:17:06
R is interpreted on the fly
In computer science parlance, R is known as an interpreted language. This means that every time you execute an R program, the R interpreter interprets and executes the R code on the fly. The following figure illustrates what happens when you run any R code:

Interpreted language versus compiled language
R first parses your source code into an internal R object representation of all the statements and expressions in your R code. R then evaluates this internal R object to execute the code.
This is what makes R such a dynamic and interactive programming language. You can type R statements into the R console and get results immediately because the R interpreter parses and evaluates the code right away. The downside of this approach is that R code runs relatively slow because it is reinterpreted every time you run it, even when it has not changed.
Contrast this with a compiled language such as C or Fortran. When you work with a compiled language, you compile your source code into the machine code before you execute it. This makes compiled languages less interactive because the compilation step can take several minutes for large programs, even when you have made just a tiny change to the code. On the other hand, once the code has been compiled, it runs very quickly on the CPU since it is already in the computer's native language.
Due to R being an interpreted language, every time you run an R program, the CPU is busy doing two things: interpreting your code and executing the instructions contained in it. Therefore, the CPU's speed can limit the performance of R programs. We will learn how to overcome CPU limitations in chapters 3 to 5.
- Learning ROS for Robotics Programming(Second Edition)
- Node.js Design Patterns
- Magento 2 Theme Design(Second Edition)
- Practical Windows Forensics
- Learning Firefox OS Application Development
- Java性能權(quán)威指南(第2版)
- Windows Server 2016 Automation with PowerShell Cookbook(Second Edition)
- H5頁面設(shè)計(jì):Mugeda版(微課版)
- Instant Lucene.NET
- Solr Cookbook(Third Edition)
- Java并發(fā)編程之美
- STM8實(shí)戰(zhàn)
- WildFly Cookbook
- Python預(yù)測(cè)之美:數(shù)據(jù)分析與算法實(shí)戰(zhàn)(雙色)
- 寫給青少年的人工智能(Python版·微課視頻版)