2009-11-04 11 views
6

Sto cercando di scoprire se R programming language è interpretato o compilato. Non riesco a trovare queste informazioni.La lingua R è stata interpretata?


Edit avrei dovuto dire interpretato o compilato per cominciare. I commentatori hanno assolutamente ragione: statico o dinamico non ha nulla a che fare con la lingua interpretata o dinamica.

+1

interpretato/statico/dinamico? queste tre parole non rimano quando parliamo di un linguaggio di programmazione ... –

risposta

15

Il R FAQ dice: "Il nucleo di R è un linguaggio interpretato dal computer".

2

R non viene compilato. Ci sono progetti che cercano di farlo compilare: http://www.hipersoft.rice.edu/rcc/, http://www.rforge.net/r2c/ ma non riesco a trovare nessuno attualmente supportato.

Detto questo, le prestazioni dell'hardware moderno sembrano ragionevoli per carichi di lavoro ancora più grandi che ho gettato su di esso (milioni di record).

+0

Non sono ancora pronti. Vedi questa domanda correlata: http://stackoverflow.com/questions/1452235/deploying-r-without-r-into-c-or-c – Shane

+0

I componenti di Revolution Computing (http://www.revolution-computing.com /) stanno lavorando su una versione di R che è presumibilmente un paio di volte più veloce della distribuzione standard. È ancora interpretato, però. –

+1

John, REvo R è ancora essenzialmente lo stesso R ma viene fornito con MKL (quick blas) e (un po ') più facile utilizzo parallelo. Il motore è identico a tutti gli effetti. –

8
+1

Giusto per chiarire la tua risposta, sì, è cosa? – Shane

+6

Domanda: la lingua R è interpretata? - Risposta: Sì, lo è. – NawaMan

+1

Grazie. Stavo solo leggendo la domanda completa: "Sto cercando di scoprire se il linguaggio di programmazione R è interpretato o statico o dinamico." – Shane

5

Potrebbe essere ... è possibile creare un compilatore o un interprete per qualsiasi linguaggio di programmazione. La lingua DOVREBBE essere agnostica all'implementazione :)

+3

Assolutamente vero, ma in pratica alcune lingue vengono compilate e alcune vengono interpretate. Quando è stata l'ultima volta che hai visto un interprete C? Non che tu non possa scriverne uno, ma nessuno mai si preoccupa di farlo. –

+0

Tuttavia, educare le persone che c'è una distinzione che mancano è una buona cosa. – blahdiblah

+2

interprete C? Da metà a fine anni '80: http://www.computinghistory.org.uk/det/12586/HiSoft-C-Interpreter/ – Spacedman

5

Polaris878 ha assolutamente ragione. È meglio dire che l'implementazione predefinita di alcune lingue è l'interprete o meno. Ma non il linguaggio stesso.

La domanda suona molto strana per me. "interpretato o statico o dinamico" ... Come possiamo confrontare la strategia di traduzione con la digitazione?

E ancora una volta dovremmo stare molto attenti con la terminologia. È meglio dire la lingua con la tipizzazione statica/dinamica rispetto al linguaggio statico/dinamico.

+0

+1 per raccogliere punti molto importanti.È particolarmente importante dissipare la nozione apparente dell'OP che i valori interpretati/statici/dinamici sono tre possibili per lo stesso attributo di una lingua. Gli ultimi due sono completamente ortogonali. – rmeador

+0

Avrei dovuto dire interpretato o compilato. – AngryHacker

0

R è definitivamente scritto in C. Mi sono chiesto qualche tempo fa questa domanda e l'ho risolto scaricando il codice sorgente da http://www.r-project.org/.

Problemi correlati