Functor qui compile