Julia: The programming language of the future?

Share
  • August 7, 2019

The TIOBE Index for August 2019 sees a slight rise in Julialang’s popularity and usage. This month, it comes in 35th place, which may not sound impressive to top dogs like Java or Python. However, the language has climbed up the charts, up from 50th place. Currently, it even places ahead of Kotlin, a fan favorite for Android development.

Pulling ahead. TIOBE August 2019 results. Source.

Recently, Julialang also celebrated the addition of composable multi-threaded parallelism, taking a page out of the Golang’s book. This new feature was introduced at JuliaCon in Baltimore, Maryland. Results from the first annual user survey were also revealed at the conference.

Let’s take a look at where the language stands, what features its users love, and see why it is rising up the charts.

Why Julia?

Quick recap: what sets Julia apart?

Julialang is a high-performance, dynamically-typed, open source language that shines in scientific computing. The robust community has groups for using the language in computational biology, statistics, machine learning, image processing, differential equations, and physics, just to name a few. It draws some familiar usage comparisons to Python, C, C++, and MATLAB.

In January 2019, Julia Computing won the Wilkinson Prize for Numerical Software, which awards outstanding contributions in the field. Siam News reported:

Julia allows researchers to write high-level code in an intuitive syntax and produce code with the speed of production programming languages. It has been widely adopted by the scientific computing community for application areas that include astronomy, economics, deep learning, energy optimization, and medicine. In particular, the Federal Aviation Administration has chosen Julia as the language for the next generation airborne collision avoidance system.

According to the 2019 survey, 73% of users and developers use Julia for research. The most popular fields are statistics, engineering, machine learning, and computer science.

SEE ALSO: GraphQL is changing the game of Web Querying. Here’s how.

From the documentation, it differs from other dynamic languages in a variety of ways:

  • The core language imposes very little; Julia Base and the standard library is written in Julia itself, including primitive operations like integer arithmetic
  • A rich language of types for constructing and describing objects, that can also optionally be used to make type declarations
  • The ability to define function behavior across many combinations of argument types via multiple dispatch
  • Automatic generation of efficient, specialized code for different argument types
  • Good performance, approaching that of statically-compiled languages like C

https://docs.julialang.org/en/v1/

Survey says…

Time to take a dip into the community’s opinions. Some noteworthy findings from the Julia User & Developer Survey 2019:

Favorite language features

These ranked as the five best technical aspects of the language.

  1. Speed, performance
  2. Ease of use
  3. Open source
  4. Multiple dispatch
  5. Solves the two language problem

SEE ALSO: The trendy five: Beat the heat with our favorite July 2019 repos

Reasons for trying it out

Why did developers initially pick up the language?

  1. Julia seems like the language of the future
  2. Faster for the work I am doing
  3. I like learning new languages
  4. I heard about Julia from friends or colleagues and wanted to try it out
  5. Preferable syntax to other languages

Popular tools

If you’re new to the language, check out some of the most commonly used packages, editors, and cloud solutions.

  • Packages: Plots.jl, DataFrames.jl, IJulia.jl, Distributions.jl, DifferentialEquations.jl
  • Code editors and IDEs: Atom, VS Code, Juno
  • Cloud solutions: JuliaBox, AWS, Google Cloud

Refer to the .pdf for information about the survey methodology and more results, including demographic information.

Give it a try!

Is Julia, as the survey’s response says, “the language of the future”?

JuliaBox lets users run the language in their browser, so you can test it out before you download using the getting started tutorials.

julia

Learning Julia in the browser. 😺 Source.

Suggested reading for newcomers includes Julia: A Fresh Approach to Numerical Computing, by Jeff Bezanson, Alan Edelman, Stefan Karpinski and Viral B. Shah, published in the SIAM Review in 2017.

Source code available on GitHub.

Have you used Julia? Let us know what you use the language for, how you like it, and how it compares to other similar programming languages.

The post Julia: The programming language of the future? appeared first on JAXenter.

Source : JAXenter