You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@velocity.apache.org by Elmar Juergens <ju...@in.tum.de> on 2006/02/03 18:12:11 UTC
Background material on Template Engines?
Hi,
I am using Velocity on a project for my Master thesis in Computer Science,
and it works like a charm.
However, for the thesis itself, I would like to write some background
paragraphs on template engines, on topics like:
- how did template engines evolve?
- how do they relate to other text generation techniques (like macro
processors)?
Any comments, explanations or pointers to additional material very much
apprechiated!
Best greetings,
Elmar Juergens
---------------------------------------------------------------------
To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: velocity-user-help@jakarta.apache.org
Re: Background material on Template Engines?
Posted by Will Glass-Husain <wg...@forio.com>.
Ah,
Here's the article I was looking for
http://www.cs.usfca.edu/~parrt/papers/mvc.templates.pdf
referenced on the Velocity mailing list here:
http://article.gmane.org/gmane.comp.jakarta.velocity.user/5469/match=theory
Incidentally, the author is the creator of the ANTLR parser generator and a
professor at University of San Francisco.
WILL
----- Original Message -----
From: "Will Glass-Husain" <wg...@forio.com>
To: "Velocity Users List" <ve...@jakarta.apache.org>; "Daniel
Dekany" <dd...@freemail.hu>
Sent: Friday, February 03, 2006 9:47 AM
Subject: Re: Background material on Template Engines?
> Elmar,
>
> There was a paper that was noted on this list a couple years ago that hit
> some of the theoretical issues involved. I'll see if I can find the
> reference.
>
> If you're looking for other examples for comparison see:
>
> JSP 2.0 (not an exact match, but can be used for templating)
> WebMacro (Java)
> FreeMarker (Java)
> Smarty (PHP)
> Template Toolkit (Perl)
>
> WILL
>
> ----- Original Message -----
> From: "Daniel Dekany" <dd...@freemail.hu>
> To: "Velocity Users List" <ve...@jakarta.apache.org>
> Sent: Friday, February 03, 2006 9:22 AM
> Subject: Re: Background material on Template Engines?
>
>
>> Friday, February 3, 2006, 6:12:11 PM, Elmar Juergens wrote:
>>
>>
>>> Hi,
>>>
>>>
>>> I am using Velocity on a project for my Master thesis in Computer
>>> Science,
>>> and it works like a charm.
>>> However, for the thesis itself, I would like to write some background
>>> paragraphs on template engines, on topics like:
>>>
>>> - how did template engines evolve?
>>
>> Like, for example, Velocity was a me-too project after WebMacro due
>> licensing issues with WebMacro. (So it's maybe a good idea to put this
>> question on the list of some other template engines too, where the
>> template engine was made because of technical reasons, rather than from
>> political reasons.)
>>
>>> - how do they relate to other text generation techniques (like macro
>>> processors)?
>>
>> I think the important thing is to define first what a template engine
>> is. In my opinion, a template engine is a template language
>> implementation plus some closely related stuff like a caching and
>> template loading mechanism. And, a template language is a special
>> programming language whose rules are chosen so that the program
>> resembles to the output that it generates. (Since programming languages
>> are text, template languages that I know about, are all text template
>> languages, i.e. they output text.)
>>
>>> Any comments, explanations or pointers to additional material very much
>>> apprechiated!
>>>
>>>
>>> Best greetings,
>>> Elmar Juergens
>>
>> --
>> Best regards,
>> Daniel Dekany
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
>> For additional commands, e-mail: velocity-user-help@jakarta.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: velocity-user-help@jakarta.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: velocity-user-help@jakarta.apache.org
Re: Background material on Template Engines?
Posted by Will Glass-Husain <wg...@forio.com>.
Almost forgot... nvelocity, a port of Velocity to .NET.
WILL
----- Original Message -----
From: "Will Glass-Husain" <wg...@forio.com>
To: "Velocity Users List" <ve...@jakarta.apache.org>; "Daniel
Dekany" <dd...@freemail.hu>
Sent: Friday, February 03, 2006 9:47 AM
Subject: Re: Background material on Template Engines?
> Elmar,
>
> There was a paper that was noted on this list a couple years ago that hit
> some of the theoretical issues involved. I'll see if I can find the
> reference.
>
> If you're looking for other examples for comparison see:
>
> JSP 2.0 (not an exact match, but can be used for templating)
> WebMacro (Java)
> FreeMarker (Java)
> Smarty (PHP)
> Template Toolkit (Perl)
>
> WILL
>
> ----- Original Message -----
> From: "Daniel Dekany" <dd...@freemail.hu>
> To: "Velocity Users List" <ve...@jakarta.apache.org>
> Sent: Friday, February 03, 2006 9:22 AM
> Subject: Re: Background material on Template Engines?
>
>
>> Friday, February 3, 2006, 6:12:11 PM, Elmar Juergens wrote:
>>
>>
>>> Hi,
>>>
>>>
>>> I am using Velocity on a project for my Master thesis in Computer
>>> Science,
>>> and it works like a charm.
>>> However, for the thesis itself, I would like to write some background
>>> paragraphs on template engines, on topics like:
>>>
>>> - how did template engines evolve?
>>
>> Like, for example, Velocity was a me-too project after WebMacro due
>> licensing issues with WebMacro. (So it's maybe a good idea to put this
>> question on the list of some other template engines too, where the
>> template engine was made because of technical reasons, rather than from
>> political reasons.)
>>
>>> - how do they relate to other text generation techniques (like macro
>>> processors)?
>>
>> I think the important thing is to define first what a template engine
>> is. In my opinion, a template engine is a template language
>> implementation plus some closely related stuff like a caching and
>> template loading mechanism. And, a template language is a special
>> programming language whose rules are chosen so that the program
>> resembles to the output that it generates. (Since programming languages
>> are text, template languages that I know about, are all text template
>> languages, i.e. they output text.)
>>
>>> Any comments, explanations or pointers to additional material very much
>>> apprechiated!
>>>
>>>
>>> Best greetings,
>>> Elmar Juergens
>>
>> --
>> Best regards,
>> Daniel Dekany
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
>> For additional commands, e-mail: velocity-user-help@jakarta.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: velocity-user-help@jakarta.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: velocity-user-help@jakarta.apache.org
Re: Background material on Template Engines?
Posted by Will Glass-Husain <wg...@forio.com>.
Elmar,
There was a paper that was noted on this list a couple years ago that hit
some of the theoretical issues involved. I'll see if I can find the
reference.
If you're looking for other examples for comparison see:
JSP 2.0 (not an exact match, but can be used for templating)
WebMacro (Java)
FreeMarker (Java)
Smarty (PHP)
Template Toolkit (Perl)
WILL
----- Original Message -----
From: "Daniel Dekany" <dd...@freemail.hu>
To: "Velocity Users List" <ve...@jakarta.apache.org>
Sent: Friday, February 03, 2006 9:22 AM
Subject: Re: Background material on Template Engines?
> Friday, February 3, 2006, 6:12:11 PM, Elmar Juergens wrote:
>
>
>> Hi,
>>
>>
>> I am using Velocity on a project for my Master thesis in Computer
>> Science,
>> and it works like a charm.
>> However, for the thesis itself, I would like to write some background
>> paragraphs on template engines, on topics like:
>>
>> - how did template engines evolve?
>
> Like, for example, Velocity was a me-too project after WebMacro due
> licensing issues with WebMacro. (So it's maybe a good idea to put this
> question on the list of some other template engines too, where the
> template engine was made because of technical reasons, rather than from
> political reasons.)
>
>> - how do they relate to other text generation techniques (like macro
>> processors)?
>
> I think the important thing is to define first what a template engine
> is. In my opinion, a template engine is a template language
> implementation plus some closely related stuff like a caching and
> template loading mechanism. And, a template language is a special
> programming language whose rules are chosen so that the program
> resembles to the output that it generates. (Since programming languages
> are text, template languages that I know about, are all text template
> languages, i.e. they output text.)
>
>> Any comments, explanations or pointers to additional material very much
>> apprechiated!
>>
>>
>> Best greetings,
>> Elmar Juergens
>
> --
> Best regards,
> Daniel Dekany
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: velocity-user-help@jakarta.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: velocity-user-help@jakarta.apache.org
Re: Background material on Template Engines?
Posted by Mike Kienenberger <mk...@gmail.com>.
Friday, February 3, 2006, 6:12:11 PM, Elmar Juergens wrote:
> However, for the thesis itself, I would like to write some background
> paragraphs on template engines, on topics like:
>
> - how did template engines evolve?
On 2/3/06, Daniel Dekany <dd...@freemail.hu> wrote:
> Like, for example, Velocity was a me-too project after WebMacro due
> licensing issues with WebMacro. (So it's maybe a good idea to put this
> question on the list of some other template engines too, where the
> template engine was made because of technical reasons, rather than from
> political reasons.)
For what it's worth, here's an early template engine (wow, 10 years
old now!) I originally used. When I switched from ObjC to Java, I
converted my templates to velocity fairly painlessly.
http://www.misckit.com/Documentation/IntroMiscMergeKit.htmld/index.html
Here's what appears to be current contact info for Don, although I
haven't talked with him in a few years :) I'm pretty sure he'd be
happy to discuss template engine evolution, at least from his own
standpoint.
http://www.yacktman.org/don/
---------------------------------------------------------------------
To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: velocity-user-help@jakarta.apache.org
Re: Background material on Template Engines?
Posted by Daniel Dekany <dd...@freemail.hu>.
Friday, February 3, 2006, 6:12:11 PM, Elmar Juergens wrote:
> Hi,
>
>
> I am using Velocity on a project for my Master thesis in Computer Science,
> and it works like a charm.
> However, for the thesis itself, I would like to write some background
> paragraphs on template engines, on topics like:
>
> - how did template engines evolve?
Like, for example, Velocity was a me-too project after WebMacro due
licensing issues with WebMacro. (So it's maybe a good idea to put this
question on the list of some other template engines too, where the
template engine was made because of technical reasons, rather than from
political reasons.)
> - how do they relate to other text generation techniques (like macro
> processors)?
I think the important thing is to define first what a template engine
is. In my opinion, a template engine is a template language
implementation plus some closely related stuff like a caching and
template loading mechanism. And, a template language is a special
programming language whose rules are chosen so that the program
resembles to the output that it generates. (Since programming languages
are text, template languages that I know about, are all text template
languages, i.e. they output text.)
> Any comments, explanations or pointers to additional material very much
> apprechiated!
>
>
> Best greetings,
> Elmar Juergens
--
Best regards,
Daniel Dekany
---------------------------------------------------------------------
To unsubscribe, e-mail: velocity-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: velocity-user-help@jakarta.apache.org