YoVDO

Making Fast Incremental Compiler for Huge Codebase

Offered By: code::dive conference via YouTube

Tags

Code::Dive Courses Software Development Courses Algorithms Courses Data Structures Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the challenges and solutions in developing a fast incremental compiler for a massive codebase in this code::dive 2019 conference talk. Dive into the novel approach of recompilation as patching previously compiled code, examining dedicated data structures and type checking algorithms for detecting changes and enabling rapid recompilation of affected code units. Learn how to shorten compiler feedback time from minutes to seconds for codebases exceeding 3 million lines of code with complex interdependencies. Gain insights from MichaƂ Bartkowiak, an experienced C++ programmer and TTCN-3 compiler developer, as he shares pragmatic strategies for maximizing the value of compiler improvements in large-scale software development projects.

Syllabus

Intro
Business Need
Codebase Growth
How Much Can We Save?
Intermediate Representation (IR)
Example : AST from Clang
Cyclic Module Dependencies
IR: Our Requirements
TTCN-3 Type System
Intermediate Representation: Summary
Incremental Compilation: Definition
Incremental Compilation: Idea
IC: Algorithm: Bird's-Eye View
IC: Algorithm, Step 2
IC: Algorithm, Unk Graph
IC: Algorithm, Step 5.1
Incremental Compilation: Summary
Final Thoughts
Incremental Compilation: Outcomes


Taught by

code::dive conference

Related Courses

Software as a Service
University of California, Berkeley via Coursera
Software Testing
University of Utah via Udacity
The Hardware/Software Interface
University of Washington via Coursera
Software Debugging
Saarland University via Udacity
Introduction to Systematic Program Design - Part 1
The University of British Columbia via Coursera