Julia is an optionally typed language, which means that the user can choose to specify the type of arguments passed to a function and the type of variables used inside a function. Julia's type system is the key for its performance; understanding it well is important, and it can pay to use type annotations, not only for documentation or tooling, but also for execution speed. This chapter discusses the realm of elementary built-in types in Julia, the operations that can be performed on them as well as the important concepts of types and scope.
The following topics are covered in this chapter:
Variables, naming conventions, and comments
Types
Integers
Floating point numbers
Elementary mathematical functions and operations
Rational and complex numbers
Characters
Strings
Regular expressions
Ranges and arrays
Dates and times
Scope and constants
You will need to follow along by typing in the examples in the REPL, or executing the code snippets in the code files of...