Hello everyone, I'm that Austin guy.

Did you look at FreeMarker? Or any other things besides Velocity before
> deciding to roll your own template engine?


Yes. If we are focused on Velocity, it's because it was our favorite
template language before I wrote Viento. I can't get over the syntax. I've
never seen anything (even rhtml) that I like as well as $object.property.

It's not 100% clear to me what you mean by this. Of course, as the main
> author and maintainer of FreeMarker's parser code, if I don't
> understand, then I think it's safe to say that most people wouldn't.
> (I'm not even sure that most people in the market for a template
> language know what an AST is.)


Sometimes code makes more sense than English. This
class<http://opensails.org/sails/file/org.opensails.viento/src/java/org/opensails/viento/builtins/IfMixin.java>is
the only code in the system that knows about 'if'. And this
little 
guy<http://opensails.org/sails/file/org.opensails.viento/src/java/org/opensails/viento/builtins/IterableMixin.java>is
solely responsible for list#each. The simplicity and the power
together
is what sets Viento apart. Less characters, more extensible.

For one thing, it is not obvious to me why you would ever want to
> override the behavior of something as key to your language as the "if"
> directive. Add new directives, sure, but, to override core ones like if
> and so on???


You wouldn't. It's an illustration of the power available, not a practical
suggestion on how to use it. It's not like we specifically coded for that
sort of thing. It's just inherent in the philosophy that the core language
constructs shouldn't be 'special'. This idea is borrowed from languages like
ruby and smalltalk. It's partially purism, but I think it's going to turn
out very useful in Viento. We're just starting to use it ourselves, so we'll
see.

I don't think a run-of-the-mill person could read the above wiki entry
> and understand what the pros and cons of Sails are as compared to the
> alternatives. Or I should say 'alternative' in the singular, since you
> only talk about Velocity.


We'll work on that.

Thanks,
Austin

Reply via email to