By Allen Downey, Ben Lauwens.
Paperback: 296 pages
Publisher: O’Reilly Media; 1 edition (May 4, 2019)
Permission is granted to copy, distribute, and/or modify this document under the terms of the Creative Commons Attribution-NonCommercial 3.0 Unported License, which is available at http://creativecommons.org/licenses/by-nc/3.0/.
From the Preface:
Julia was originally released in 2012 by Alan Edelman, Stefan Karpinski, Jeff Bezanson, and Viral Shah. It is a free and open source programming language. Choosing a programming language is always subjective. For me, the following characteristics of Julia are decisive:
- Julia is developed as a high-performance programming language.
- Julia uses multiple dispatch, which allows the programmer to choose from different programming patterns adapted to the application.
- Julia is a dynamically typed language that can easily be used interactively.
- Julia has a nice high-level syntax that is easy to learn.
- Julia is an optionally typed programming language whose (user-defined) data types make the code clearer and more robust.
- Julia has an extended standard library and numerous third-party packages are available.
Julia is a unique programming language because it solves the so-called “two languages problem.” No other programming language is needed to write high-performance code. This does not mean it happens automatically. It is the responsibility of the programmer to optimize the code that forms a bottleneck, but this can done in Julia itself.
Who Is This Book For?
This book is for anyone who wants to learn to program. No formal prior knowledge is required. New concepts are introduced gradually and more advanced topics are described in later chapters.
Think Julia can be used for a one-semester course at the high school, or college level.