Currently the rendering is dispatched as a multimethod,
however if more built-in renderers get added to this project it will add significant cost in terms of code size because they cannot be dead code eliminated.
https://groups.google.com/forum/#!topic/clojurescript/3rL8vKzyJQA
So future built in rendereres will have to be based on protocols to allow unused renderers to be removed.
Currently the rendering is dispatched as a multimethod, however if more built-in renderers get added to this project it will add significant cost in terms of code size because they cannot be dead code eliminated. https://groups.google.com/forum/#!topic/clojurescript/3rL8vKzyJQA
So future built in rendereres will have to be based on protocols to allow unused renderers to be removed.