The Julia Language
A fresh approach to Technical Computing
Julia is a programming language for ease of use and performance, which is rapidly gaining momentum in all kinds of technical and scientific computing. Our community of users (including many past GSoC students!) have built state of the art packages for differential equations, machine learning, differentiable programming, mathematical optimization, physical modelling and probabilistic programming. A Summer of Code project in Julia is an opportunity to work at the bleeding edge of any of these exciting fields.
Work on the core language is welcome, but we are also acting as an umbrella organisation for several packages in the Julia ecosystem. The major ones are:
Flux, for machine learning; CuArrays.jl and the GPU programming stack; DifferentialEquations.jl, for solving differential equations; Turing.jl for probabilistic programming.
As well contributions to packages, we welcome self-contained projects that use these tools to do something interesting. For example, previous students have written speech recognition and reinforcement learning (e.g. AlphaGo) models for Flux’s model zoo, or been involved in our Neural ODEs work.