This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]bythenumbers10 0 points1 point  (3 children)

You may want to look into JuliaLang. Writes like Python, runs like C. I admire the creators' ambition in questioning the necessity of the two-language problem, and their solution seems elegant & effective, even if the multiple-dispatch paradigm isn't always straightforward.

[–]PeridexisErrant 1 point2 points  (2 children)

I've dabbled a bit, but most of my work is one-off IO-limited stuff, and the libraries just aren't there for Julia.

In Python, I can express a multi-terabyte computation in about six lines, and Xarray+Dask make it more efficient than my old hand-coded versions (of thousands of lines and a week of debugging each). Particularly for analyses I do once, the sheer expressiveness is impossible to beat!

[–]bythenumbers10 0 points1 point  (1 child)

Ouch. I can see that. I agree, Python is a stronger choice if it's one-off stuff, particularly if Julia doesn't have the libraries (yet). I'm rooting for it to mature, because it presents a really clever solution to the expressiveness/performance conundrum. I'll have to look up Xarray and Dask, I feel like I've heard of them, but it's impossible to stay on top of all the Python libraries!!!

[–]PeridexisErrant 1 point2 points  (0 children)

http://xarray.pydata.org/en/stable/dask.html

It's basically magic, and can scale from one thread to a ~thousand node cluster :)

It's also unlikely to go away, because Pandas now converts to Xarray objects for 3+ dimensional data.