Julia is a high-level, high-performance dynamic programming language for technical computing with syntax that is familiar to users of other technical computing environments. It provides a sophisticated compiler, distributed parallel execution, numerical accuracy, and an extensive mathematical function library. The library, largely written in Julia itself, also integrates mature, best-of-breed C and Fortran libraries for linear algebra, random number generation, signal processing, and string processing. In addition, the Julia developer community is contributing a number of external packages through Julia's built-in package manager at a rapid pace. IJulia, a collaboration between the IPython and Julia communities, provides a powerful browser-based graphical notebook interface to Julia. Julia programs are organized around multiple dispatch; by defining functions and overloading them for different combinations of argument types, which can also be user-defined. A Summary of Features: * Multiple dispatch: providing ability to define function behavior across many combinations of argument types * Dynamic type system: types for documentation, optimization, and dispatch * Good performance, approaching that of statically-compiled languages like C * Built-in package manager * Lisp-like macros and other metaprogramming facilities * Call Python functions: use the PyCall package * Call C functions directly: no wrappers or special APIs * Powerful shell-like capabilities for managing other processes * Designed for parallelism and distributed computation * Coroutines: lightweight "green" threading * User-defined types are as fast and compact as built-ins * Automatic generation of efficient, specialized code for different argument types * Elegant and extensible conversions and promotions for numeric and other types * Efficient support for Unicode, including but not limited to UTF-8 * MIT licensed: free and open source