Other "Templating" libraries go to a lot of effort to just concatenate and interpolate strings, spitting out a big string of HTML at the end. The runtime then needs to convert this string into HTML and do stuff with it. Why go to all that work of parsing ids, attributes, buffered output, etc., just to throw it all away and force the browser to parse it again? Additionally the clientside code would need to set up bindings and need to re-traverse the DOM to attach to various nodes. All in all a lot of the work is wasted and works against other parts of the application.