Book Image

Learning Julia

By : Anshul Joshi, Rahul Lakhanpal
Book Image

Learning Julia

By: Anshul Joshi, Rahul Lakhanpal

Overview of this book

Julia is a highly appropriate language for scientific computing, but it comes with all the required capabilities of a general-purpose language. It allows us to achieve C/Fortran-like performance while maintaining the concise syntax of a scripting language such as Python. It is perfect for building high-performance and concurrent applications. From the basics of its syntax to learning built-in object types, this book covers it all. This book shows you how to write effective functions, reduce code redundancies, and improve code reuse. It will be helpful for new programmers who are starting out with Julia to explore its wide and ever-growing package ecosystem and also for experienced developers/statisticians/data scientists who want to add Julia to their skill-set. The book presents the fundamentals of programming in Julia and in-depth informative examples, using a step-by-step approach. You will be taken through concepts and examples such as doing simple mathematical operations, creating loops, metaprogramming, functions, collections, multiple dispatch, and so on. By the end of the book, you will be able to apply your skills in Julia to create and explore applications of any domain.
Table of Contents (17 chapters)
Title Page
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
8
Data Visualization and Graphics

Floating point numbers in Julia


It is easy to represent floating point numbers in Julia. They are represented in a similar fashion as they are in other languages:

# Add a decimal point
julia> 100.0
100.0

julia> 24.
24.0

# It is not required to precede a number from the decimal point
julia> .10
0.1

julia> typeof(ans)
Float64

There is a concept of positive zero and negative zero in Julia. They are equal but with different binary representations:

# equating two zeroes
julia> 0.0 == -0.0
true

julia> bits(0.0)
"0000000000000000000000000000000000000000000000000000000000000000"

# different first bit for negative zero
julia> bits(-0.0)
"1000000000000000000000000000000000000000000000000000000000000000"

Exponential notation can be very useful and convenient in various scenarios. It can be used in Julia using e:

julia> 2.99e8
2.99e8

julia> 2.99e8>999999
true

We have been using Float64 in the preceding examples. We can also use Float32 on 64-bit computers if required:

#...