Facile : A Domain Specific Language and Compiler for Program Analysis and Optimization
Research on program analyses and optimizations has advanced a lot and is able to provide insightful diagnostics and generate high performant code for various targets over past few years. However, it is still a cumbersome task to implement compiler algorithms which analyze or perform optimizations as it requires the knowledge of compiler infrastructure and related tools; a researcher, who is well versed in compilers needs to know the internals of the compiler infrastructure (like LLVM or GCC) in order to implement even a simple analysis pass. This poses hindrance in rapid prototyping and experimentation of new compiler algorithms. We propose a domain specific language called Facile which aims to reduce this burden off the compiler developers by allowing them to express data-flow and control-flow algorithms at higher lever of abstraction. The Facile compiler lowers the code written in Facile language to a compiler infrastructure specific pass(es) and generates final executable. We demonstrate the effectiveness of our language with a real-world use case and explain the tool chain required to implement the language.
paper link (facile-domain-specific.pdf) | 350KiB |
Sat 19 Jan Times are displayed in time zone: Greenwich Mean Time : Belfast change
11:00 - 12:30: Morning PapersOff the Beaten Track at Sala VII Chair(s): Michael GreenbergPomona College | |||
11:00 - 11:45 Talk | Facile : A Domain Specific Language and Compiler for Program Analysis and Optimization Off the Beaten Track File Attached | ||
11:45 - 12:30 Talk | From Tactics to Structure Editors for Proofs Off the Beaten Track Xuanrui QiTufts University Pre-print |