On Tuesday, April 18, the Computer Science Department will host its final colloquium of the Spring 2017 semester. Mr. Andy Keep, a technical lead from Cisco Systems, Inc., will give a talk entitled “Writing Compilers in Industry“. An abstract of his talk can be found below.
Please join CS faculty and students in Forcina 408 from 12:30 – 1:30 PM for this talk.
There will be pizza!!!
Compilers are an important tool for working programmers, but few realize the important role compiler researchers and developers continue to play. Having a basic understanding of how a modern compiler works, and what it can (and cannot) do, can help any programmer better understand the performance characteristics of a program. Compilers, both for new languages and existing ones, continue to be developed in industry. Clang has replaced GCC as the C compiler for macOS, and new general purposes languages like Swift and Rust are building on a similar platform. Domain Specific Languages (DSLs) are another important area where compiler technology is brought to bear in industry. In addition to new languages, compilers are also being used to target new devices, including Graphics Processing Units (GPUs), Field Programmable Gate Arrays (FPGAs), and Application Specific Integrated Circuits (ASICs), which is making these traditionally task specific devices into the realm of everyday use.
In this talk I will discuss my experience learning about compilers as a graduate student at Indiana University, and describe how I continue to apply that skill set at Cisco Systems, where I have spent the last three years working on compilers for networking oriented DSLs, most recently P4, a language for specifying the operation of a networking data plane.
Andy Keep is a Technical Lead at Cisco Systems, Inc. where he has spent the better part of the last three years as a compiler engineer, working on compilers for networking related Domain Specific Languages (DSLs). His most recent efforts have focused on a compiler for P4, a DSL for programming network data planes. He is also a maintainer for Chez Scheme, a compiler for the Scheme programming language, originally developed by Andy’s Ph.D. advisor Kent Dybvig, which Cisco released as an open source project in April, 2016. Prior to joining Cisco, Andy spent a year as a post doctoral researcher at the University of Utah, working for Matt Might on static analysis. Andy started working with Matt after finishing his Ph.D. at Indiana University, where he re-wrote the compiler for Chez Scheme, along with his advisor Kent Dybvig, using the nanopass compiler framework.