<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Christopher H. Laco &#187; parser</title>
	<atom:link href="http://chrislaco.com/tag/parser/feed/" rel="self" type="application/rss+xml" />
	<link>http://chrislaco.com</link>
	<description></description>
	<lastBuildDate>Wed, 28 Jul 2010 00:21:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Template Toolkit for .NET</title>
		<link>http://chrislaco.com/software/template-toolkit-for-net/</link>
		<comments>http://chrislaco.com/software/template-toolkit-for-net/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 23:11:05 +0000</pubDate>
		<dc:creator>claco</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[antlr]]></category>
		<category><![CDATA[ast]]></category>
		<category><![CDATA[lexer]]></category>
		<category><![CDATA[parser]]></category>
		<category><![CDATA[template toolkit]]></category>
		<category><![CDATA[tt]]></category>

		<guid isPermaLink="false">http://chrislaco.com/?p=231</guid>
		<description><![CDATA[A while back I got the urge the waste time on yet another project. This time, it&#8217;s a version of Template Toolkit for .NET. As usual, you can find the project on GitHub. Not knowing anything about what it takes &#8230; <a href="http://chrislaco.com/software/template-toolkit-for-net/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>A while back I got the urge the waste time on yet another project. This time, it&#8217;s a version of  <a href="http://template-toolkit.org/">Template Toolkit</a> for .NET. As usual, you can find the project on <a href="http://github.com/claco/tt.net/">GitHub</a>.</p>
<p>Not knowing anything about what it takes to convert a template language to .NET I started from ground up learning how to use ANTLR to create a lexer/parser automatically from a grammar definition. As if that wasn&#8217;t enough, my parser output is an Abstract Syntax Tree, which I then use another grammar to template it into C# code using StringTemplate templates, which ANTLR supports natively.</p>
<p>It&#8217;s slow going, but I&#8217;m learning a lot along the way. At some point I&#8217;m going to output VB.NET and it still needs a lot of work for compilation, dll caching and such. The code is in a pre beta state, but it does support basic GET/SET/DEFAULT/IF statements and I&#8217;m slowly adding more as I get more comfortable with ANTLR.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrislaco.com/software/template-toolkit-for-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
