Di recente ho letto un post di R-Blogger, collegato a questo post di John Myles White su una nuova lingua chiamata Julia . Julia si avvale di un compilatore just-in-time che gli fornisce tempi di esecuzione rapidi malvagi e lo pone sullo stesso ordine di grandezza della velocità di C / C ++ (lo stesso ordine , non altrettanto veloce). Inoltre, utilizza i meccanismi di looping ortodossi che hanno familiarità con quelli di noi che hanno iniziato a programmare su linguaggi tradizionali, anziché le istruzioni di R e le operazioni vettoriali.
R non se ne va affatto, anche con tempi così fantastici da Julia. Ha un ampio supporto nel settore e numerosi pacchetti meravigliosi per fare praticamente qualsiasi cosa.
I miei interessi sono di natura bayesiana, dove spesso vettorializzare non è possibile. Certamente le attività seriali devono essere eseguite usando loop e comportano un calcolo pesante ad ogni iterazione. R può essere molto lento in queste attività di loop seriale e C / ++ non è una passeggiata nel parco per scrivere. Julia sembra un'ottima alternativa alla scrittura in C / ++, ma è nella sua infanzia e manca di molte funzionalità che amo di R. Avrebbe senso imparare Julia come banco di lavoro di statistica computazionale se ottiene abbastanza supporto dalla comunità delle statistiche e le persone iniziano a scrivere pacchetti utili per questo.
Le mie domande seguono:
Quali caratteristiche deve avere Julia per avere il fascino che ha reso R il linguaggio di fatto delle statistiche?
Quali sono i vantaggi e gli svantaggi di imparare Julia a svolgere compiti pesanti dal punto di vista computazionale, rispetto all'apprendimento di un linguaggio di basso livello come C / ++?