$ whois julia
Julia
first released in 2012 · by Jeff Bezanson, Stefan Karpinski, Viral B. Shah, Alan Edelman
$ guessprog --inspect julia
- year
- 2012
- paradigm
- multi paradigm
- family
- other
- memory
- automatic gc
- binding
- dynamic
- safety
- strong
JULIA(7)
- AUTHORS
- Jeff Bezanson, Stefan Karpinski, Viral B. Shah, Alan Edelman
- HISTORY
- Jeff Bezanson, Stefan Karpinski, Viral B. Shah and Alan Edelman started Julia in 2009, with much of the early work done at MIT. They announced it publicly in 2012 with a blog post titled "Why We Created Julia", describing themselves as "greedy": they wanted the speed of C with the ease of Python, R and MATLAB. Julia tackles this "two-language problem" with just-in-time compilation via LLVM and multiple dispatch as its core paradigm. Version 1.0 was released in 2018.
- USAGE
- Julia is a niche but well-established language for scientific and numerical computing, used in research, climate modelling, pharmaceutical modelling and optimisation. Its user base is much smaller than Python's but strong in technical computing.
- SEE ALSO
- Julia on Wikipedia ↗
abstract type Shape end
struct Circle <: Shape
r::Float64
end
struct Square <: Shape
side::Float64
end
# Multiple dispatch: one method per argument type
area(c::Circle) = π * c.r^2
area(s::Square) = s.side^2
shapes = [Circle(1.0), Square(2.0)]
println(sum(area.(shapes))) # broadcasting with the dot