The Design and Implementation of the Wolfram Language Compiler

Abstract

The Wolfram Language is a high level scripting language used in technical, scientific, engineering, mathematical, and computing fields. The language is widely used in practice and, in particular, it is the foundation of Wolfram Mathematica and Wolfram Alpha. This talk describes the Wolfram Language Compiler. The Wolfram Compiler is a long-term project that compiles Wolfram programs. We show how clever use of parametric types, code specialization, and optimization techniques allow one to compile the Wolfram Language and achieve performance that rivals hand-tuned C code. We then show how the compiler enables features for scientific computation (such as automatic differentiation) and how it a key new implementation layer for future development of the language. Finally, we will demonstrate how the Wolfram compiler is used target border use cases (e.g. WebAssembly) and accelerators (e.g. CUDA or FPGAs).

Date
Jul 17, 2020 3:30 PM
Location
Berlin, Germany