That looks a hell of a lot like underscore.js templates (http://underscorejs.org/#template) to me. What would be the advantage if I was to make the swap?
It's based on EJS. So it's indeed really similar to underscore. In fact, we benchmarked against underscore's template function and EJS and, at least in our templates, achieved better performance (Not very scientific: we got averages out of 200000 renders). It offers breakable printable blocks, and very nice debuggability.
We based it on EJS because we had a lot of views with EJS. But we needed a lot of performance (Our goal was to be faster than the underscore templating language). We also needed debuggability. So, it's built in a way that works very well with all the tools we use. Finally, the feature we benefit from the most is broken printable blocks. It's very easy to capture the output from a function in a block, and just move it around as we please. It makes wrapping helpers a hell of a lot easier.
I don't think so. I think the purpouse is to offer less: We don't even have built-in helpers or file loading mechanisms or caching. The philosophy is that we just do templating, we do it really well, and the rest is code from your stack. This philosophy has worked with our projects.