Over a million developers have joined DZone.

Julia: A High-Performance Programming Language for Data Science and More

DZone's Guide to

Julia: A High-Performance Programming Language for Data Science and More

· Big Data Zone ·
Free Resource

Hortonworks Sandbox for HDP and HDF is your chance to get started on learning, developing, testing and trying out new features. Each download comes preconfigured with interactive tutorials, sample data and developments from the Apache community.

Data scientists working with R and Python, as well as anybody looking for interesting, new-ish, high-performance programming languages should look into the not-as-much-discussed Julia. Evan Miller has written an informative (and pretty persuasive) blog post on his website about the merits of Julia as a solution for programmers who tend to, for example, work in a three-phase pattern in which Python (or R, or Ruby) code is improved upon with something faster, like C++, and then even faster, like assembly code. Julia offers a cleaner approach, Miller says:

Julia breaks down the second wall — the wall between your high-level code and native assembly. Not only can you write code with the performance of C in Julia, you can take a peek behind the curtain of any function into its LLVM Intermediate Representation as well as its generated assembly code — all within the REPL.

That sounds pretty good, right? In other words, Julia is all about getting stuff done quickly and efficiently:

So forget the stuff you may have read about Julia's type system, multiple dispatch and homoiconi-whatever. That stuff is cool (I guess), but if you're like me, the real benefit is being able to go from the first prototype all the way to balls-to-the-wall multi-core SIMD performance optimizations without ever leaving the Julia environment.

Miller's post isn't a tutorial or a getting-started piece, but it does point to a few resources and makes a strong argument in favor of Julia, including some of the drawbacks, such as the lack of libraries, given the recent development of the language. Check out the Miller's full post to learn more.

Hortonworks Community Connection (HCC) is an online collaboration destination for developers, DevOps, customers and partners to get answers to questions, collaborate on technical articles and share code examples from GitHub.  Join the discussion.


Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}