4 ms·
In one breath "I am a bit of a bare-metal purist" and in the next "As for using other languages - I played with Python on Storm". So which one is it? :-)
by teacup50 11y ago
In one breath "I am a bit of a bare-metal purist" and in the next "As for using other languages - I played with Python on Storm".
So which one is it? :-)
- srean 11y agoI am not the OP but it is not necessarily a contradiction. The underlying goal in Pythonic data-science is that one pushes as much of the computation into pre-packaged loops that have already been written in a close to the metal language (C, C++, Fortran). Well, that's as far as the intent goes, practice deviates from it by degrees. This does not work quite as well in Java (or JVM) because JNI is just supremely god-awful. JVM semantics are overly strict, this over-specification kills optimization opportunities. Is heavy on memory, I would rather use the memory for loading more data than fill it with overhead. Finally there is this OOP culture that gets in the way. That said, JVM is one of the most mature, and well engineered VMs out there (Java is another story), but not very well suited for number crunching, because there is more to number crunching than calling BLAS APIs.
- vegabook 11y agolast time I checked it was Java Scala or Python. None is bare metal. We use Python as glue. Any heavy lifting is done using Numpy ecosystem or C.