We have already seen that functions are inherently defined as generic, that is, they can be used for different types of their arguments. The compiler will generate a separate version of the function each time it is called with arguments of a new type. In Julia, a concrete version of a function for a specific combination of argument types is called a method. To define a new method for a function (also called overloading), just use the same function name but a different signature, that is, with different argument types. A list of all the methods is stored in a virtual method table (vtable) on the function itself; methods do not belong to a particular type. When a function is called, Julia will lookup in vtable at runtime to find which concrete method it should call, based on the types of all its arguments...
Julia 1.0 Programming Complete Reference Guide
By :
Julia 1.0 Programming Complete Reference Guide
By:
Overview of this book
Julia offers the high productivity and ease of use of Python and R with the lightning-fast speed of C++. There’s never been a better time to learn this language, thanks to its large-scale adoption across a wide range of domains, including fintech, biotech and artificial intelligence (AI).
You will begin by learning how to set up a running Julia platform, before exploring its various built-in types. This Learning Path walks you through two important collection types: arrays and matrices. You’ll be taken through how type conversions and promotions work, and in further chapters you'll study how Julia interacts with operating systems and other languages. You’ll also learn about the use of macros, what makes Julia suitable for numerical and scientific computing, and how to run external programs.
Once you have grasped the basics, this Learning Path goes on to how to analyze the Iris dataset using DataFrames. While building a web scraper and a web app, you’ll explore the use of functions, methods, and multiple dispatches. In the final chapters, you'll delve into machine learning, where you'll build a book recommender system.
By the end of this Learning Path, you’ll be well versed with Julia and have the skills you need to leverage its high speed and efficiency for your applications.
This Learning Path includes content from the following Packt products:
• Julia 1.0 Programming - Second Edition by Ivo Balbaert
• Julia Programming Projects by Adrian Salceanu
Table of Contents (18 chapters)
Preface
Free Chapter
Installing the Julia Platform
Variables, Types, and Operations
Functions
Control Flow
Collection Types
More on Types, Methods, and Modules
Metaprogramming in Julia
I/O, Networking, and Parallel Computing
Running External Programs
The Standard Library and Packages
Creating Our First Julia App
Setting Up the Wiki Game
Building the Wiki Game Web Crawler
Adding a Web UI for the Wiki Game
Implementing Recommender Systems with Julia
Machine Learning for Recommender Systems
Other Books You May Enjoy
Customer Reviews