4

The Three Ms

This chapter is devoted to a discussion of Julia’s three Ms, which, when combined, are relatively unique in common programming languages.

These are as follows:

  • Multiple dispatch: The feature in Julia that gives it the ability to generate functional code specific to the parametric types of the arguments passed, which provides speed equivalent to more conventionally compiled languages
  • Metaprogramming and macros: Dynamic features to extend Julia using “genuine” macros created at runtime, adding Lisp-like functionality to the language
  • Modularity: The packaging of type structures, functions, and macros into modules that are used as the basis for packages

We have come across some examples of all these before in the preceding chapters ...

Get Mastering Julia - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.