related documents Multi-stage Programming with Functors and Monads: Eliminating Abstraction Overhead from Generic Code Conferences