On Sun, Jul 01, 2007 at 09:27:17PM +0200, A. Pagaltzis wrote: > * Bill Moseley <[EMAIL PROTECTED]> [2007-07-01 19:25]: > > Macro? > > > > [% > > game_detail_link( Game, 'Click here' ); > > game_history_link( Game, 'View history' ); > > %] > > Avoid macros like the plague. > > ??? They share a namespace with variables.
Yes, right. References to subroutines are variables. > ??? TT2 only has global variables with dynamic scoping. Yes, you just have a stash, eh, hash. And shallow localization. I kind of wish macros didn't bother with localization. > ??? It???s extremely lenient at runtime; you can use function call > syntax to ???invoke??? a variable, with no complaints. Yes, that's the design. Or a byproduct of the design. You can invoke variable syntax to invoke subroutine calls, too. [% foo %] just spits out whatever foo is, and I don't worry about the implementation. Is that good or bad? Either way, sure is handy. > Taken together, these mean that you can have hours of fun chasing > down stupid bugs. Yes, when first using TT you can do that. It's not that bad with a little experience. You can catch undefined errors automatically if you want but TT ignoring them also works out to be a feature. TT generates perl code, and when I have a tough problem I just debug that code. > Of course, we???ve known since the ???70s or so how to make better > programming languages, but ABW considers templating languages > to be totally different from programming languages, so you get > to be transported back to the ???60s. Yes, we are celebrating 40 years this summer! Only when I'm really tripping do I believe TT's a programming language. > Have I mentioned that I hate TT2 with a passion? Avoid it like the plague, then. ;) -- Bill Moseley [EMAIL PROTECTED] _______________________________________________ List: Catalyst@lists.rawmode.org Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst Searchable archive: http://www.mail-archive.com/catalyst@lists.rawmode.org/ Dev site: http://dev.catalyst.perl.org/