Learn to use Julia as a tool for research, and solve problems of genuine interest—like modeling the course of a pandemic—in this practical, hands-on introduction to the language.
The Julia programming language is acclaimed in scientific circles for its unparalleled ease, interactivity, and speed. Practical Julia is a comprehensive introduction to the language, making it accessible even if you’re new to programming.
Julia is a fairly new programming language. It emerged into the public sphere in 2012 after two and a half years of research by four computer scientists at MIT. Julia’s creators explained why they needed to create a new language: they were “greedy.” There were already languages that were fast, such as C and Fortran. They were well suited to writing programs that ran on giant supercomputers to simulate the weather or design airplanes. But their syntax was not the friendliest; programs in these languages demanded a certain amount of ceremony. And they didn’t provide an interactive experience; one could not improvise and explore at the terminal, but had to submit to an edit-compile-run discipline.
Dive in with a thorough guide to Julia’s syntax, data types, and best practices, then transition to craft solutions for challenges in physics, statistics, biology, mathematics, scientific machine learning, and more. Whether you’re solving computational problems, visualizing data, writing simulations, or developing specialized tools, Practical Julia will show you how.
As you work through the book, you’ll
• Use comprehensions and generators, higher-level functions, array initialization and manipulation, and perform operations on Unicode text
• Create new syntax and generate code with metaprogramming and macros, and control the error system to manipulate program execution
• Visualize everything from mathematical constructs and experimental designs to algorithm flowcharts
• Elevate performance using Julia’s unique type system with multiple dispatch
• Delve into scientific packages tailored for diverse fields like fluid dynamics, agent-based modeling, and image processing
Whether your interest is in scientific research, statistics, mathematics, or just the fun of programming with Julia, Practical Julia will have you writing high-performance code that can do real work in no time.