Book Image

Getting Started with Julia

By : Ivo Balbaert
Book Image

Getting Started with Julia

By: Ivo Balbaert

Overview of this book

Table of Contents (19 chapters)
Getting Started with Julia
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
The Rationale for Julia
Index

First-class functions and closures


In this section, we will demonstrate the power and flexibility of functions (example code can be found in chapter 3\first_class.jl). First, functions have their own type: typing typeof(mult) in the REPL returns Function. Functions can also be assigned to a variable by their name:

julia> m = mult 
julia> m(6, 6) #> 36.

This is useful when working with anonymous functions, such as c = x -> x + 2, or as follows:

julia> plustwo = function (x)
                     x + 2
                 end
(anonymous function)
julia> plustwo(3)
5

Operators are just functions written with their arguments in an infix form, for example, x + y is equivalent to +(x, y). In fact, the first form is parsed to the second form when it is evaluated. We can confirm it in the REPL: +(3,4) returns 7 and typeof(+) returns Function.

A function can take a function (or multiple functions) as its argument that calculates the numerical derivative of a function f, as defined...