OOPSLA 2011 talk about variability-aware parsing (i.e., parsing C code without preprocessing it first)
Corresponding paper: http://www.informatik.uni-marburg.de/~kaestner/oopsla11_typechef.pdf
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Variability-Aware Parsing -- OOPSLA Talk
1. Variability-Aware Parsing
in the Presence of
Lexical Macros and Conditional Compilation
Christian Kästner
Paolo G. Giarrusso
Tillmann Rendel
Sebastian Erdweg
Klaus Ostermann
Thorsten Berger
2. Parsing C Code
without Preprocessing
Christian Kästner
Paolo G. Giarrusso
Tillmann Rendel
Sebastian Erdweg
Klaus Ostermann
Thorsten Berger
18. 353 included header files
0 per C file
8590 macros
0 per C file
1387 conditional macros
0 per C file
335490 token
0 per C file
72 % conditional
0 2.6.33.3
X86
49. 7665 C files (x86)
0
30 seconds per file
0 (median)
85 hours total
0
4.1 % overhead
0 (undiscipl.)
0
0 syntax errors 2.6.33.3
X86
50. Parser
Variability-Aware Type System
Module System
Static Analysis
Bug Finding
Testing
Model Checking
Theorem Proving
Editor Support
Code Transform.
…
51. Variability-Aware Parsing
in the Presence of
Lexical Macros and Conditional Compilation
Variability-Aware
Parser-Framework
( +
2
Variability-Aware * Variability-Aware
3 * VA
Lexer )
+ Parser
4A
(macros, includes)
5¬A (split & join) 2 3 4 5
https://github.com/ckaestne/TypeChef