<?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>Code Obscurata &#187; templates</title>
	<atom:link href="http://nealabq.com/blog/category/templates/feed/" rel="self" type="application/rss+xml" />
	<link>http://nealabq.com/blog</link>
	<description>Probing dark corners while dodging the grues</description>
	<lastBuildDate>Tue, 29 Jun 2010 19:09:34 +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>Exactly when are templates expanded?</title>
		<link>http://nealabq.com/blog/2009/01/06/templates_expanded/</link>
		<comments>http://nealabq.com/blog/2009/01/06/templates_expanded/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 23:18:22 +0000</pubDate>
		<dc:creator>Neal</dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[templates]]></category>

		<guid isPermaLink="false">http://nealabq.com/blog/?p=763</guid>
		<description><![CDATA[C++ templates are only expanded as necessary. The following is error-free even though does_not_exist() does indeed not exist. The method never_called() is never called and thus never expanded, and so does_not_exist() is never needed. template< typename X > struct use_non_existant_stuff { int never_called( ) { does_not_exist( ); } }; // no errors or warnings here [...]]]></description>
		<wfw:commentRss>http://nealabq.com/blog/2009/01/06/templates_expanded/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Variadic tuple&lt;..&gt; &#8212; imperative meta programming</title>
		<link>http://nealabq.com/blog/2008/12/22/imperative/</link>
		<comments>http://nealabq.com/blog/2008/12/22/imperative/#comments</comments>
		<pubDate>Mon, 22 Dec 2008 22:27:33 +0000</pubDate>
		<dc:creator>Neal</dc:creator>
				<category><![CDATA[Boost]]></category>
		<category><![CDATA[C/C++]]></category>
		<category><![CDATA[metaprogramming]]></category>
		<category><![CDATA[templates]]></category>

		<guid isPermaLink="false">http://nealabq.com/blog/?p=678</guid>
		<description><![CDATA[Since my last two posts (here and here) are about how &#8230; might unpack and generate code if it were very smart, I thought I&#8217;d bring up a more difficult case. How do you build templated constructors inside the variadic template tuple class? Remember, this is all fantasy code. The &#8230; operator will not actually [...]]]></description>
		<wfw:commentRss>http://nealabq.com/blog/2008/12/22/imperative/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Variadic tuple&lt;..&gt; &#8212; the get&lt;N&gt;() method</title>
		<link>http://nealabq.com/blog/2008/12/19/variadic-tuple-get/</link>
		<comments>http://nealabq.com/blog/2008/12/19/variadic-tuple-get/#comments</comments>
		<pubDate>Fri, 19 Dec 2008 21:54:38 +0000</pubDate>
		<dc:creator>Neal</dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[templates]]></category>

		<guid isPermaLink="false">http://nealabq.com/blog/?p=664</guid>
		<description><![CDATA[In my last post I talked about how a naive implementation of tuple might be easier to understand, and I showed how you might define the member values with the &#8230; operator, if only &#8230; were very smart about unpacking (which it isn&#8217;t). The get&#60;N>() method presents additional challenges. /* fantasy code -- will not [...]]]></description>
		<wfw:commentRss>http://nealabq.com/blog/2008/12/19/variadic-tuple-get/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Variadic tuple&lt;..&gt; &#8212; clever vs obvious</title>
		<link>http://nealabq.com/blog/2008/12/19/variadic-tuple/</link>
		<comments>http://nealabq.com/blog/2008/12/19/variadic-tuple/#comments</comments>
		<pubDate>Fri, 19 Dec 2008 19:56:43 +0000</pubDate>
		<dc:creator>Neal</dc:creator>
				<category><![CDATA[C/C++]]></category>
		<category><![CDATA[Preprocessor]]></category>
		<category><![CDATA[templates]]></category>

		<guid isPermaLink="false">http://nealabq.com/blog/?p=644</guid>
		<description><![CDATA[I mentioned in my previous post how the tuple&#60;..> template class will be defined with variadic template parameters in the future. template&#60; typename ... TYPEs > class tuple; How do you define the body of a template like that? The implementation described in N2080 (see section A.1 on page 10) essentially defines tuple as a [...]]]></description>
		<wfw:commentRss>http://nealabq.com/blog/2008/12/19/variadic-tuple/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
