I just received an interesting e-mail, (from GitHub), talking about a virtual event, “JuliaCon”, where they describe Julia as “the fastest high-performance open source computing language for machine learning, artificial intelligence, life sciences, robotics, algorithmic trading, real-time analytics and more.”
Before we go any further, I really don’t know anything about Julia, (except that it’s my granddaughter’s name), other than what I’ve read on Wikipedia about it
According to the Wikipedia article noted above, Julia has a much more FOSS-friendly license, (a combination of MIT and GPL-2), than other similar languages, particularly when compared to the proprietary MATLAB and Wolfram languages already provided for the Raspberry Pi.
Likewise, it is claimed that Julia beats the pants off of just about everything out there - including MATLAB - being one of a very few languages, (like C), that have achieved petaFlop performance on standard supercomputer benchmarks.
Later on in the article, they mention that though initial compatibility with the Pi was a bit squiffy, it’s improving rapidly.
(Side note for @thomascoyle11859 - it supposedly eats CUDA-cores for lunch, so your Nano/Xavier based boards should love it.)
Admittedly there are a few rocks in the road:
-
Any language that references any version or implementation of LISP as an ancestor is going to be chewy. (IMHO, Mandarin Chinese vs LISP is an even toss-up as far as complexity is concerned.) The only language chewier, (IMHO), is APL
-
Using Dexter/M.R. libraries with it will have to be done via special Julia calls to Python libraries, (which is supposed to be “easy”). Though I am sure the Dexter libraries can be ported to Julia, that is being left “as an exercise for the student”
(Thomas, do you want to take a crack at it?) -
It seems to be tied up within Jupyter in ways I don’t understand.
Actually Jupyter itself is something I don’t really understand the essential need for. . . but that’s another story.
Looking up Julia on the Raspberry Pi opened up a whole cornucopia of goodies, not the least of which was
Apparently they did this by using Julia, a Raspberry Pi, and an Arduino to implement a self-driving car: https://www.youtube.com/watch?v=bX4TXWO7dA0
Note that this implementation uses hand-made wheel encoders connected to an Arduino and it smells strongly of a GoPiGo re-implementation. What they could have done with The Real Thing? It’s anyone’s guess.
It sounds interesting.
It might be worth a look at. At least it’s something that we should keep our eyes on as it looks like it might be an up-and-coming thing in robotics.
Here’s where it can be found: https://julialang.org/