Является ли R скомпилированным языком? - PullRequest
8 голосов
/ 22 января 2009

Я не могу найти его нигде в Интернете (и я не хочу его устанавливать). Является ли язык R скомпилированным языком? Насколько быстро запускается предварительно написанный скрипт? Он выполняет какую-либо компиляцию или просто выполняет инструкции построчно?

Ответы [ 3 ]

15 голосов
/ 22 января 2009

В большинстве случаев R - это интерпретируемый язык, который выполняется в цикле чтения-оценки-печати. Существует множество расширений R, написанных на других языках, таких как C и Fortran, где скорость или взаимодействие с нативными библиотеками помогают.

6 голосов
/ 22 января 2009

Я часто переписывал R-код на C ++ и заставил его работать в 100 раз быстрее. Цикл особенно неэффективен в R.

5 голосов
/ 15 июня 2012

R обычно интерпретируемый язык. Однако пакет compiler предлагает компиляцию байт-кода, которая может улучшить производительность. Вы также можете вызвать скомпилированный код из R.

С точки зрения того, насколько быстро это зависит от того, что вы пытаетесь сделать, и от того, как вы пытаетесь это сделать. Некоторые циклические операции могут быть очень медленными. Однако во многих случаях при хорошо написанном коде производительность сценариев R определяется скоростью лежащих в основе внутренних библиотек на основе C и скоростей чтения и записи в системной памяти, поэтому R примерно такой же быстрый, как и все остальное.

...