What Is Julia?
The Julia is open source programming language was designed from the beginning for high-performance.
Compiled, not interpreted, for speed. Julia is just-in-time (JIT) compiled using the LLVM compiler framework. Julia can approach or match the speed of C.
Julia is dynamic typing with static type benefits, feels like a scripting language, and easy to use.
Julia has a rich language of descriptive data-types, and type declarations can be used to clarify and solidify programs.
The Julia created in 2009 by a four-person team - Jeff Bezanson, Alan Edelman, Stefan Karpinski, and Viral B. Shah.
The Julia was designed for scientific and numerical computation. The Julia first appeared 2012; 7 years ago and the stable release 1.1.0 in 21 January 2019.
Julia’s syntax is very similar to Python, but also expressive and powerful. Python, C, and FORTRAN libraries are just a call away.
Why is Julia a language?
1.      Julia is a new and open source programming language
2.      Easy to use 
3.      Julia has attracted some high-profile clients
4.      Dynamic typing with static type benefits
5.      Julia feels like a scripting language
What are the features of Julia?
According to the official website, the main features of the language are:
1.      Very good performance, approaching that of statically-typed languages like C
2.      Dynamic type system: types for documentation, optimization, and dispatch
3.      Multiple dispatches: providing ability to define function behavior across many combinations of argument types
4.      Call C functions directly: no wrappers or special APIs
5.      Call Python functions: use the PyCall package[a]
6.      A built-in package manager
7.      Lisp-like macros and other meta-programming facilities
8.      Powerful shell-like abilities to manage other processes
9.      Designed for parallel and distributed computing
10. Coroutines: lightweight green threading
11. User-defined types are as fast and compact as built-ins
12. Elegant and extensible conversions and promotions for numeric and other types
13. Efficient support for Unicode, including but not limited to UTF-8
14. Automatic generation of efficient, specialized code for different argument types
How to install Julia?
Julia installation is straightforward, several ways for you to run, whether using pre-compiled binaries or compiling from source. Download and install Julia by following the instructions at https://julialang.org/downloads/
Is Julia a good programming language?
1.      Yes! Julia is high-level, high-performance dynamic programming language for technical computing and has similar syntax as Python.
2.      Easy to use 
3.      Julia has attracted some high-profile clients
4.      Julia feels like a scripting language
Is Julia a functional language?
No! Julia is not a functional programming language. Julia offers features that are present in functional programming languages and can be used to a certain degree for coding in a functional programming style.
Is Julia a compiled language?
Yes! Julia is compiled, like C.
Is Julia object oriented?
No! Julia is not object-oriented because there is no inheritance.
Is Julia a scripting language?
Yes! Julia is a scripting language because Julia is an interpreted, embeddable language that features just-in-time (JIT) compilation.
Is Julia statically typed?
No! Julia is always dynamically typed and type annotations do not make it static.
Is Julia replacing python?
I can’t say! Market trend of data science projects are truly based on python.