Byron Foster wrote:
What's with the tone? Are you angry about something?
Well, of course. Obviously.
I just realized something. This is the first time I recall anybody
asking me *why* I can't stand the Velocity community. Others, like Geir
Magnusson, Nathan Bubna and Will Glass-Hussain, for example, never asked
me why it is that I can't stand the Velocity project. (And, by
extension, cannot stand them.) And I tend to take things on face value.
I guess it's because they basically know why, and you (and some other
guy who asked me in private) are asking me because you don't understand.
Suppose you went to the local shopping mall and I mean now, in 2009,
some store there, that many people considered a really respectable
retailer, they were selling a 300 Mhz Pentium II computer with 64 Mb of
RAM and a 500 Mb hard disk. Not in a bargain bin, like for 50 bucks you
can take it away, but selling it as if it was a current article.
Suppose further that little old ladies who didn't know any better were
buying these computers because they don't know any better. Wouldn't you
at least want to scream at these people: "Don't buy this! It's not a
state of the art computer! You're being ripped off!"
I mean, there's a state of the art in a space. You can't be selling
something that is 200/2001 technology as if it was current, right?
So what is going on in this discussion? For the nth time, somebody
brings up this feature, macros with body content, and for the nth time,
people who are supposedly the project managers in this project show that
they do not even understand the feature. Something that has been in
FreeMarker for 6 years.
It's not like the obsolete computer insofar as people aren't shelling
out money, but time is money, and you're wasting people's time. If you
show up and announce some programmer's editor that doesn't have basic
features like syntax highlighting or regular expression based
search/replace, you would deserve to be sneered at. In particular, when
you answer people who ask about these features and demonstrate that you
don't even know what those features are.
Look, guys, you really ought to step back and think about why you are
involved in an open source project, involved in open source generally.
It cannot (or at least should not) be *solely* as a self-promotion
mechanism. It has to be (IMHO) because the work is genuinely useful. To
have a product that is so unambiguously inferior to the state of the art
in its space that *everybody* would be better off using something else
and to be going around announcing it in the major places, as if it was a
state of the art tool... this is pathetic, masturbatory behavior.
There is war and
famine in this world, issues that are much more worthy of your anger
then template syntax.
True, there are bigger issues in the world, but that's a big
non-sequitir. People are asking me why I can't stand them and so I
answer you straight-up. Look at the position we are in (by we, I mean
the FreeMarker community.) You're supposedly our main competitor. Not
only do you not have anything remotely competitive to versions of our
tool from 6 years ago, but, as you see here, the principal people don't
even bother to understand what the feature set of a modern template
engine is.
From my POV, it's utterly exasperating. That, combined with all this
"Apache Way" BS and the utter unwillingness of the echosphere out there
to point out that the emperor is wearing no clothes....
Sheesh...
Yeah, that's what I say.
I don't see why #if($cond $content) has an advantage over
#if($cond)$content#end. If your implication is that $content should be
passed to a macros as a parameter, well then yes, we are discussing the
mechanism for doing this.
A little friendlier next time please...
Well, frankly, you guys would have to stop being such insufferable
wankers first. As I have said elsewhere, respect is not something you
are owed as a matter of course. In the open source world, respect is
earned. Do something to earn my respect and things might be different.
Until then, it's like the old proverb. You reap what you sow.
Jonathan Revusky
--
lead developer, FreeMarker project, http://freemarker.org/
FreeCC Parser Generator, http://code.google.com/p/freecc
FreeMarker vs. Velocity, 5 years of practical experience
http://freemarker.blogspot.com/2007/12/velocity-of-freemarker-looking-at-5.html
On Jan 15, 2009, at 19:48 , Jonathan Revusky wrote:
How can you guys be supposedly working in the template engine space
and not understand the motivation for basic features that have existed
in competing tools for the past 5 years at least? That's such a long
time. Sheesh.
I am going to throw you a bone, try to give you a hint. Here goes:
Why don't you ask yourself now why built-in directives like #if and
#foreach can have nested content? Wouldn't it be simpler to just allow
instead:
#if ($condition $content)
or:
#foreach ($listOrIterator $content)
You see, the issue, geniuses, is essentially the same as with the
built-in directives: macros with body content can be nested one within
the other to any arbitrary depth.
Anyway, why are you talking about this in a complete vacuum? You can
look at how it works in FreeMarker -- or JSP even. A description of
the feature and how it works in FreeMarker is here:
http://freemarker.org/docs/dgui_misc_userdefdir.html
Towards the bottom of the page, the heading is "Nested Content".
You'll also see that another aspect of this is that the #nested
directive can be invoked with parameters, IOW the macro can pass back
parameters to the nested content block.
But the whole notion that this feature is some little thing that is
unnecessary is 180 degrees away from the truth. There are all kinds of
templating patterns that are essentially impossible without this
feature. It's a basic feature in any modern templating tool.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@velocity.apache.org
For additional commands, e-mail: dev-h...@velocity.apache.org