I've been doing some deep digging around ActionView lately, and
thought I'd clean some stuff up while I'm down there.
My first problem is ActionPack is really tightly coupled with ERB. My
first instinct was to take advantage of the template handlers. I
thought I could just refactor ERB, RJS, and Builder into nice
TemplateHandlers and bind them with register_template_handler. Well,
those template handlers are kind of second class because ActionView
will not compile them into speedy templates.
I started working on it and I found a ton of other "dumb" things
dropping out as well, like all this TEMPLATE_HANDLER_PREFERENCES non
sense. My initial patch does alot of cleanup, but I'm asking for some
feedback before I continue further.
I think alot of the other template compile logic that is in
ActiveView::Base private methods could be move over to the
TemplateHandlers as well.