Ich habe kürzlich einen Beitrag von R-Bloggern gelesen, der mit diesem Blogbeitrag von John Myles White über eine neue Sprache namens Julia verlinkt ist . Julia nutzt einen Just-in-Time-Compiler, der unglaublich schnelle Laufzeiten liefert und die gleiche Größenordnung der Geschwindigkeit wie C / C ++ aufweist (die gleiche Reihenfolge , nicht gleich schnell). Darüber hinaus werden die orthodoxen Schleifenmechanismen verwendet, mit denen diejenigen von uns, die mit dem Programmieren in traditionellen Sprachen begonnen haben, vertraut sind, anstatt die Anweisungen und Vektoroperationen von R anzuwenden.
R wird auf keinen Fall verschwinden, auch mit solch tollen Timings von Julia. Es hat umfangreiche Unterstützung in der Industrie und zahlreiche wunderbare Pakete, um fast alles zu tun.
Meine Interessen sind bayesianischer Natur, wo Vektorisierung oft nicht möglich ist. Sicherlich müssen serielle Aufgaben unter Verwendung von Schleifen ausgeführt werden und erfordern bei jeder Iteration viel Rechenaufwand. R kann bei diesen seriellen Schleifentasks sehr langsam sein, und C / ++ ist kein Spaziergang im Park zum Schreiben. Julia scheint eine großartige Alternative zum Schreiben in C / ++ zu sein, steckt aber noch in den Kinderschuhen und es fehlen viele Funktionen, die ich an R liebe. Es wäre nur dann sinnvoll, Julia als rechnergestützte Statistik-Workbench zu lernen, wenn sie genügend Unterstützung erhält von der Statistik-Community und die Leute beginnen, nützliche Pakete dafür zu schreiben.
Meine Fragen folgen:
Welche Features muss Julia haben, um die Faszination zu haben, die R de facto zur Sprache der Statistik gemacht hat?
Was sind die Vor- und Nachteile des Lernens von Julia für rechenintensive Aufgaben im Vergleich zum Erlernen einer einfachen Sprache wie C / ++?