November 2016
Intermediate to advanced
697 pages
14h 44m
English
Macros run very early in the compilers process when there is no information about how the program might execute. The inputs to a macro are, therefore, simply symbols and expressions—the textual tokens that make up a program. Given that a lot of Julia's powers come from its type system, it may be useful to have something such as macros—code that generates code—at a point where the compiler has inferred the types of the variables and function arguments in the program. Generated functions (also sometimes called staged functions) fulfill this need.
Declaring a generated function is simple. Instead of the usual function keyword, generated functions are declared with the appropriately named @generated function ...
Read now
Unlock full access