Basser Seminar Series

Build your own programming language with LLVM

Speaker: Dr Lang Hames
LLVM Engineer

When: Wednesday 4 March, 2015, 4:00-6:00pm

Where: The University of Sydney, School of IT Building, SIT Lecture Theatre (Room 123), Level 1

Add seminar to my diary


LLVM is an open-source project that provides an industrial strength platform for building programming tools, including compilers, assemblers, linkers, and debuggers. LLVM is supported by a large and growing community including large tech companies (Apple, Google, Microsoft, Oracle), academic institutions, and individual contributors. Its ease of use and its production strength make it an ideal research platform for academics conducting research in programming languages and related areas.

This talk will give a brief introduction to the LLVM project and a demonstration will be given of how a toy programming language can be implemented in LLVM. The talk will be followed by a hands-on workshop to learn how to use LLVM: attendees will learn how to build LLVM from source and use it to implement a compiler for the toy language.

Requirements for the exercise: Linux or MacOS system with CMake 2.8.12 and a reasonably recent C++ compiler installed (Clang or GCC 4.8). Please download the LLVM sources from as well.

Speaker's biography

Lang Hames works as an LLVM engineer in Silicon Valley. He has been developing source code for the LLVM project professionally since 2011, and as an open-source contributor since 2007. His research interest is compiler support for esoteric processor architectures. Recently his engineering work has focused on improving LLVM's support for JIT compilation. He has an undergraduate degree (BCST/ADV) in Computer Science from and The University of Sydney and holds a PhD in Computer Science from the University of Sydney as well.