this name is not very good because it makes it sounds like the variable is provider of self, but it's really just `$compileProvider` so I would call it like that.