A modern compiler calculates and constructs a large amount of information about the programs it compiles. Tooling authors want to take advantage of this information in order to extend the compiler in interesting ways. Source plugins are a mechanism implemented in the Glasgow Haskell Compiler (GHC) which allow inspection and modification of programs as they pass through the compilation pipeline.
This paper is about how to write source plugins. Due to their nature–they are ways to extend the compiler–at least basic knowledge about how the compiler works is critical to designing and implementing a robust and therefore successful plugin. The goal of the paper is to equip would-be plugin authors with inspiration about what kinds of plugins they should write and most importantly with the basic techniques which should be used in order to write them.
Thu 22 AugDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
| 16:50 - 18:15 | Paper Session 4: MetaprogrammingHaskell at Aurora Borealis Chair(s): Christiaan Baaij QBayLogic B.V. | ||
| 16:5030m Research paper | Multi-Stage Programs in Context Haskell Matthew Pickering University of Bristol, Nicolas Wu Imperial College London, Csongor Kiss Imperial College London | ||
| 17:2030m Research paper | Working with Source Plugins Haskell Matthew Pickering University of Bristol, Nicolas Wu Imperial College London, Boldizsár Németh Eötvös Loránd University | ||
| 17:5010m Other | PC Chair Report Haskell Richard A. Eisenberg Bryn Mawr College, USA | ||
