<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-19026079.post6870424356555497398..comments</id><updated>2008-09-30T13:19:25.106+02:00</updated><category term='plone'/><category term='personal'/><category term='python'/><category term='zope'/><title type='text'>Comments on ..: hannosch :..: Project Messerschmidt vs. NKOTB</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.hannosch.eu/feeds/6870424356555497398/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html'/><author><name>Hanno Schlichting</name><uri>http://www.blogger.com/profile/02880767944793425548</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-mJW0fTlfWBc/TjBmMUGwU1I/AAAAAAAAA08/wAGjCU2GQeY/s220/hannosch.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>12</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-19026079.post-4769132451455272310</id><published>2008-09-30T13:19:00.000+02:00</published><updated>2008-09-30T13:19:00.000+02:00</updated><title type='text'>Re: the bigtable benchmark... I also have used it ...</title><content type='html'>Re: the bigtable benchmark... I also have used it to primarily compare the performances of evoque and mako, employing a number of variations to explore mostly how quoting affects the performance i.e. when done automatically, manually, or none at all.&lt;BR/&gt;&lt;BR/&gt;In addition, I also explored another variation, namely a "manually tweaked" version of this simple double-loop bigtable template (basically turning it a single python expression, as a list comprehension). It is interesting that both evoque and mako seem to speed up to a max -- probably getting very close to a real python speed limit. The specific results I am referring to are here:&lt;BR/&gt;&lt;A HREF="http://evoque.gizmojo.org/benchmark/bigtable/" REL="nofollow"&gt;http://evoque.gizmojo.org/benchmark/bigtable/&lt;/A&gt;&lt;BR/&gt;&lt;BR/&gt;Being eval-based, evoque pays a higher price on such a loop-intensive template (but performs faster on pure substitions, as indicated by the companion &lt;A HREF="http://evoque.gizmojo.org/benchmark/subs/" REL="nofollow"&gt;subs benchmark&lt;/A&gt;. &lt;BR/&gt;&lt;BR/&gt;The template source string for the &amp;quot;manually tweaked&amp;quot; variation (having just a single expression the syntax this is identical for both evoque and mako) is: &lt;BR/&gt;&lt;BR/&gt;&amp;quot;&amp;quot;&amp;quot;&amp;lt;table&amp;gt;&lt;BR/&gt;${ &amp;quot;&amp;quot;.join([ &amp;quot;&amp;lt;tr&amp;gt;%s&amp;lt;/tr&amp;gt;&amp;quot; %(&amp;quot;&amp;quot;.join([&amp;quot;&amp;lt;td&amp;gt;%s&amp;lt;/td&amp;gt;&amp;quot;%(col) for col in row]))&lt;BR/&gt;                  for row in table ]) }    &lt;BR/&gt;&amp;lt;/table&amp;gt;&lt;BR/&gt;&amp;quot;&amp;quot;&amp;quot;&lt;BR/&gt;&lt;BR/&gt;This variation makes mako go twice as fast, and the gains are even bigger for evoque. Thus, in response to &amp;quot;Any other ideas?&amp;quot; above, another idea is clever loop optimization ;-) &lt;BR/&gt;&lt;BR/&gt;Code for this and all benchmarks is of course included in the evoque distribution...</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/4769132451455272310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/4769132451455272310'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html?showComment=1222773540000#c4769132451455272310' title=''/><author><name>mario</name><uri>http://www.blogger.com/profile/03476281116213346407</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html' ref='tag:blogger.com,1999:blog-19026079.post-6870424356555497398' source='http://www.blogger.com/feeds/19026079/posts/default/6870424356555497398' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1009009772'/></entry><entry><id>tag:blogger.com,1999:blog-19026079.post-8416285131176831094</id><published>2008-07-21T23:35:00.000+02:00</published><updated>2008-07-21T23:35:00.000+02:00</updated><title type='text'>Further discuss of the Mako comparision has been t...</title><content type='html'>Further discuss of the Mako comparision has been taken to http://groups.google.com/group/pylons-discuss/browse_thread/thread/9d453cc5b9fc6364/6dc5608263c8cd13</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/8416285131176831094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/8416285131176831094'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html?showComment=1216676100000#c8416285131176831094' title=''/><author><name>Hanno Schlichting</name><uri>http://www.blogger.com/profile/02880767944793425548</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.hannosch.info/hannosch.jpeg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html' ref='tag:blogger.com,1999:blog-19026079.post-6870424356555497398' source='http://www.blogger.com/feeds/19026079/posts/default/6870424356555497398' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-406388786'/></entry><entry><id>tag:blogger.com,1999:blog-19026079.post-1323571621179922915</id><published>2008-07-21T22:13:00.000+02:00</published><updated>2008-07-21T22:13:00.000+02:00</updated><title type='text'>&amp;gt; Huge benefits are gained by not using c/Strin...</title><content type='html'>&amp;gt; Huge benefits are gained by not using c/StringIO but a simple list for storing the internal buffer, optimizing the cgi.escape function and merging consecutive write statements into one...&lt;BR/&gt;&lt;BR/&gt;Mako uses a list instead of StringIO and merges write statements into one as well.  The 0.2 series also inlines the buffer reference in the template to reduce name lookups.&lt;BR/&gt;&lt;BR/&gt;We haven&amp;#39;t optimized cgi.escape but you can disable all usage of cgi.escape (as well as the default call to unicode()) which is useful for benching the raw interpreter speed (but I wouldn&amp;#39;t think this would provide a 300% speed improvement....).   The Mako compiled template for &amp;quot;bigtable&amp;quot; is literally just the two loops and a couple of buffer.write() statements...just look at the generated source.  There&amp;#39;s a little bit of execution overhead but not much (i.e. not 300-500%, certainly), and there&amp;#39;s no runtime &amp;quot;interpreter&amp;quot; in use either - Python controls the flow of execution directly.&lt;BR/&gt;&lt;BR/&gt;So without my downloading everything and combing through everyone&amp;#39;s source (which I guess I&amp;#39;ll have to find the time to do), and without any native code optimization present, I&amp;#39;m not seeing any factor that would produce such largely divergent numbers.  Mako has a few constructs that slow it down, like &amp;#39;%namespace import=&amp;quot;*&amp;quot;&amp;#39;, but I doubt you&amp;#39;re using that...it also wouldn&amp;#39;t explain your huge gains over Cheetah.  You should definitely turn off the default &amp;quot;unicode()&amp;quot; filter though, this is a fairly significant performance factor.&lt;BR/&gt;&lt;BR/&gt;I wrote Mako testing against Cheetah&amp;#39;s speed at every step (including Cheetah&amp;#39;s native C extensions) and could hardly squeeze an extra half second beyond them even without the default unicode() filter.&lt;BR/&gt;&lt;BR/&gt;Any other ideas ?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/1323571621179922915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/1323571621179922915'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html?showComment=1216671180000#c1323571621179922915' title=''/><author><name>mike bayer</name><uri>http://www.blogger.com/profile/01417862951114999907</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html' ref='tag:blogger.com,1999:blog-19026079.post-6870424356555497398' source='http://www.blogger.com/feeds/19026079/posts/default/6870424356555497398' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-865111520'/></entry><entry><id>tag:blogger.com,1999:blog-19026079.post-3307987554606886269</id><published>2008-07-21T21:50:00.000+02:00</published><updated>2008-07-21T21:50:00.000+02:00</updated><title type='text'>@mike bayer:&lt;br&gt;&lt;br&gt;The results for all of the tes...</title><content type='html'>@mike bayer:&lt;BR/&gt;&lt;BR/&gt;The results for all of the tests don't use psyco, since that is an optimization strategy that applies to all of the templating languages. If you enable psyco, the spitfire result goes up by about 50% for example (spitfire does have built-in support for psyco at the O4 level, I show the result for O2/3, which for this simple test is the same).&lt;BR/&gt;&lt;BR/&gt;I haven't actually tried running z3c.pt with psyco enabled but would expect to get a result of one third to 50 percent better as well.&lt;BR/&gt;&lt;BR/&gt;Huge benefits are gained by not using c/StringIO but a simple list for storing the internal buffer, optimizing the cgi.escape function and merging consecutive write statements into one...</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/3307987554606886269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/3307987554606886269'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html?showComment=1216669800000#c3307987554606886269' title=''/><author><name>Hanno Schlichting</name><uri>http://www.blogger.com/profile/02880767944793425548</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.hannosch.info/hannosch.jpeg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html' ref='tag:blogger.com,1999:blog-19026079.post-6870424356555497398' source='http://www.blogger.com/feeds/19026079/posts/default/6870424356555497398' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-406388786'/></entry><entry><id>tag:blogger.com,1999:blog-19026079.post-4663642381775038937</id><published>2008-07-21T18:10:00.000+02:00</published><updated>2008-07-21T18:10:00.000+02:00</updated><title type='text'>I haven't tried, since Mako is plenty fast for any...</title><content type='html'>I haven't tried, since Mako is plenty fast for anyone using it (including reddit), but I wonder what would happen if you ran its generated Python modules through an optimizer like Psyco ?   I'm not sure how spitfire/z3c.pt are getting these kinds of results, but if its just a question of post-optimization on generated Python, then this is something that could apply just as well to Mako (and maybe Cheetah).  The fact that you're showing bigtable results (which is just two nested loops) suggests this is what's going on.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/4663642381775038937'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/4663642381775038937'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html?showComment=1216656600000#c4663642381775038937' title=''/><author><name>mike bayer</name><uri>http://www.blogger.com/profile/01417862951114999907</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html' ref='tag:blogger.com,1999:blog-19026079.post-6870424356555497398' source='http://www.blogger.com/feeds/19026079/posts/default/6870424356555497398' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-865111520'/></entry><entry><id>tag:blogger.com,1999:blog-19026079.post-8567850157203267850</id><published>2008-07-21T08:43:00.000+02:00</published><updated>2008-07-21T08:43:00.000+02:00</updated><title type='text'>@Baiju: The bigtable tests are available in SVN:&lt;b...</title><content type='html'>@Baiju: The bigtable tests are available in SVN:&lt;BR/&gt;&lt;BR/&gt;svn://svn.zope.org/repos/main/z3c.pt/trunk/benchmark/benchmark/bigtable.py&lt;BR/&gt;&lt;BR/&gt;and&lt;BR/&gt;&lt;BR/&gt;http://spitfire.googlecode.com/svn/trunk/tests/perf/bigtable.py</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/8567850157203267850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/8567850157203267850'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html?showComment=1216622580000#c8567850157203267850' title=''/><author><name>Hanno Schlichting</name><uri>http://www.blogger.com/profile/02880767944793425548</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.hannosch.info/hannosch.jpeg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html' ref='tag:blogger.com,1999:blog-19026079.post-6870424356555497398' source='http://www.blogger.com/feeds/19026079/posts/default/6870424356555497398' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-406388786'/></entry><entry><id>tag:blogger.com,1999:blog-19026079.post-4101011688298866082</id><published>2008-07-21T04:01:00.000+02:00</published><updated>2008-07-21T04:01:00.000+02:00</updated><title type='text'>Can you please publish the HTML page used for rend...</title><content type='html'>Can you please publish the HTML page used for rendering ?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/4101011688298866082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/4101011688298866082'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html?showComment=1216605660000#c4101011688298866082' title=''/><author><name>Baiju M</name><uri>http://www.blogger.com/profile/00138331842009416849</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html' ref='tag:blogger.com,1999:blog-19026079.post-6870424356555497398' source='http://www.blogger.com/feeds/19026079/posts/default/6870424356555497398' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1755071128'/></entry><entry><id>tag:blogger.com,1999:blog-19026079.post-3724434298631456887</id><published>2008-07-19T20:43:00.000+02:00</published><updated>2008-07-19T20:43:00.000+02:00</updated><title type='text'>Good work Hanno.  The current trunk build of Spitf...</title><content type='html'>Good work Hanno.  The current trunk build of Spitfire does have an attribute language that did at one time work. :-)  I'm busy trying to get Spitfire used in a real production project. Once I have a little time, I will revisit the attribute language and makes sure it's test cases pass again.&lt;BR/&gt;&lt;BR/&gt;In other news, my recent work on improving the performance of general python has led me to some strategies that may generate even faster code.  Once Spitfire is running in a production there should be a wealth of data for further investigation.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/3724434298631456887'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/3724434298631456887'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html?showComment=1216492980000#c3724434298631456887' title=''/><author><name>Mike</name><uri>http://www.blogger.com/profile/03322194191863962141</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html' ref='tag:blogger.com,1999:blog-19026079.post-6870424356555497398' source='http://www.blogger.com/feeds/19026079/posts/default/6870424356555497398' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1290921269'/></entry><entry><id>tag:blogger.com,1999:blog-19026079.post-103407166888014886</id><published>2008-07-18T19:12:00.000+02:00</published><updated>2008-07-18T19:12:00.000+02:00</updated><title type='text'>Thank you for the graphical tip! I updated the cha...</title><content type='html'>Thank you for the graphical tip! I updated the chart to show the reversed benchmark now and spitfire does look by an order of magnitude better than z3c.pt now ;)</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/103407166888014886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/103407166888014886'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html?showComment=1216401120000#c103407166888014886' title=''/><author><name>Hanno Schlichting</name><uri>http://www.blogger.com/profile/02880767944793425548</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.hannosch.info/hannosch.jpeg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html' ref='tag:blogger.com,1999:blog-19026079.post-6870424356555497398' source='http://www.blogger.com/feeds/19026079/posts/default/6870424356555497398' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-406388786'/></entry><entry><id>tag:blogger.com,1999:blog-19026079.post-2202487693582612568</id><published>2008-07-18T19:01:00.000+02:00</published><updated>2008-07-18T19:01:00.000+02:00</updated><title type='text'>Nice summary!&lt;br&gt;&lt;br&gt;I'm excited about z3c.pt even...</title><content type='html'>Nice summary!&lt;BR/&gt;&lt;BR/&gt;I'm excited about z3c.pt even though my heart lies with Spitfire. The cleanup and refactoring needed to support z3c.pt puts us in an ideal position to move to Spitfire later.&lt;BR/&gt;&lt;BR/&gt;One important thing to note is that we'll keep compatible syntax across the implementations — tal:content will still be tal:content, regardless of the engine involved.&lt;BR/&gt;&lt;BR/&gt;PS: Just a useful tip for the future when it comes to graph visualization: try to make the tallest graph be the "best/fastest". In this particular case, I would have picked "pages/second" instead of "second/page", so the tallest graph would be fastest. That would also show just how much faster both z3c.pt and Spitfire really are at the bigtable test. :)&lt;BR/&gt;&lt;BR/&gt;PPS: Spitfire is a template compiler, not a template language. That's why it can support multiple input syntaxes. It generates an Abstract Syntax Tree. :)</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/2202487693582612568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/2202487693582612568'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html?showComment=1216400460000#c2202487693582612568' title=''/><author><name>limi</name><uri>http://limi.net/</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/openid16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html' ref='tag:blogger.com,1999:blog-19026079.post-6870424356555497398' source='http://www.blogger.com/feeds/19026079/posts/default/6870424356555497398' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-837339196'/></entry><entry><id>tag:blogger.com,1999:blog-19026079.post-5990988050154361507</id><published>2008-07-18T18:14:00.000+02:00</published><updated>2008-07-18T18:14:00.000+02:00</updated><title type='text'>No METAL support is not a problem in the long run,...</title><content type='html'>No METAL support is not a problem in the long run, since macros are evil. When including macros, use viewlets instead, and for the theming something like Deliverence should be used.&lt;BR/&gt;&lt;BR/&gt;In the short run it is a problem to do theming in for example Plone, without macros. But then again it's only useful if you want to be able to actually call the ZPT main template macros, so then you would have to include complete ZPT macro compatibility....&lt;BR/&gt;&lt;BR/&gt;Better focus on getting a deliverence style theming layer into the zc.themehook. ;) (Yeah, I know, I promised to do that a year ago...)</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/5990988050154361507'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/5990988050154361507'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html?showComment=1216397640000#c5990988050154361507' title=''/><author><name>Lennart Regebro</name><uri>http://www.blogger.com/profile/08337807480455483637</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://lennart.regebro.nu/lennart.png'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html' ref='tag:blogger.com,1999:blog-19026079.post-6870424356555497398' source='http://www.blogger.com/feeds/19026079/posts/default/6870424356555497398' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-606153962'/></entry><entry><id>tag:blogger.com,1999:blog-19026079.post-5491350318755963392</id><published>2008-07-18T17:41:00.000+02:00</published><updated>2008-07-18T17:41:00.000+02:00</updated><title type='text'>For those not in the know, Messerschmidt is a reno...</title><content type='html'>For those not in the know, Messerschmidt is a renowned German manufacturer of fighter planes (today they produce small bubble cars). While the Spitfire propelled its way through the skies, the &lt;A HREF="http://en.wikipedia.org/wiki/Messerschmitt_Me_262" REL="nofollow"&gt;Me 262&lt;/A&gt; was a real jet fighter.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/5491350318755963392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19026079/6870424356555497398/comments/default/5491350318755963392'/><link rel='alternate' type='text/html' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html?showComment=1216395660000#c5491350318755963392' title=''/><author><name>malthe</name><uri>http://www.blogger.com/profile/06350993952511336935</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.hannosch.eu/2008/07/project-messerschmidt-vs-nkotb.html' ref='tag:blogger.com,1999:blog-19026079.post-6870424356555497398' source='http://www.blogger.com/feeds/19026079/posts/default/6870424356555497398' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-2069822965'/></entry></feed>
