Videos from JuliaCon are now available online
2018
Previous editions: 2017 | 2016 | 2015 | 2014
Jamie Brandon



Julia as a platform for language development

Many problems turn out to be compiler problems, in fields as diverse as database querying, ‘big data’ engines, machine learning, probabilistic programming, web APIs, GUI development, network configuration, distributed systems and model checking. But creating a quality compiler from scratch takes an incredible amount of effort. The PL community has long recognized this problem and has produced a whole zoo of proposed solutions, including shared virtual machines (eg JVM, CLR), staging (eg Terra, Squid) and partial evaluation (eg RPython, Truffle). Using examples from both personal and commercial projects, I’ll show that many of these approaches are already available in Julia, and can be mixed and matched as needed to produce fast language implementations with minimal effort. I’ll also cover problems we’ve encountered along with workarounds.

Speaker's bio

I make programming languages and interfaces. Until recently a researcher at RelationalAI, working on declarative languages for in-database machine learning.