Back to results

University of Illinois at Urbana-Champaign

Compiling high-level scripting languages to performant code

Abstract

dc:description

The popularity of data- and scientific-oriented applications, the abundance of on-demand compute resources, and the scarcity of domain expert programmers have given rise to high- level scripting languages. These high-level scripting languages offer a fast way to translate ideas into code, but tend to incur a heavy performance overhead. To alleviate the performance penalty, each implementation of these languages often offer a compilation path to a subset of the language. In this thesis, we present the design and implementation of the Wolfram Language compiler, the production compiler for the Wolfram Language. We show how popular language features and runtime behavior, expected by Wolfram Language developers, are efficiently implemented within the compiler. We then show how the compiler provides a friction-less path to migrate programs from the interpreter to the compiler. We evaluate the compiler and show that the compiled code matches the performance of a highly tuned hand-written C code. Unlike existing techniques that compile a subset of the language, the compiler sup- ports the entirety of the Wolfram Language. We show why the compiler is a new model of development for programmers and showcase some applications of the compiler. The compiler has been released as a prominent feature of the Wolfram Engine, is readily available to developers, and is used by internal and external users to drive Wolfram Language features and implementations.

Degree

thesis:*
Name thesis:degree_name
Ph.D.
Level thesis:degree_level
Dissertation
Discipline thesis:degree_discipline
Computer Science
Grantor
University of Illinois at Urbana-Champaign
Year dc:date
2020

Author and committee

dc:creator, dc:contributor.*
Author dc:creator
  • Dakkak, Abdul Majed
Contributors dc:contributor
  • Hwu, Wen-Mei W
  • Wickham-Jones, Charles Thomas
  • Adve, Vikram S
  • Padua, David A

Subjects

dc:subject × 9

Rights

dc:rights
Statement dc:rights
  • Copyright 2020 Abdul Dakkak
Language dc:language
en

Identifiers

dc:identifier.*
Handle dc:identifier
http://hdl.handle.net/2142/108715
OAI identifier oai:identifier
oai:www.ideals.illinois.edu:2142/108715

Chain of custody

source
Harvested from
University of Illinois - Urbana-Champaign
Base URL
www.ideals.illinois.edu/oai-pmh
Last updated
2026-07-22
Source record
OAI-PMH GetRecord
citation

Dakkak, Abdul Majed. Compiling high-level scripting languages to performant code. Dissertation thesis, University of Illinois at Urbana-Champaign, 2020. http://hdl.handle.net/2142/108715