Spitfire: Template Lightning Talk
Upcoming SlideShare
Loading in...5
×
 

Spitfire: Template Lightning Talk

on

  • 5,677 views

Lightning talk about the new Python-based template language called Spitfire. Given at the Plone Conference 2007 in Naples, Italy by Alexander Limi — http://limi.net

Lightning talk about the new Python-based template language called Spitfire. Given at the Plone Conference 2007 in Naples, Italy by Alexander Limi — http://limi.net

Statistics

Views

Total Views
5,677
Views on SlideShare
5,666
Embed Views
11

Actions

Likes
2
Downloads
32
Comments
0

1 Embed 11

http://www.slideshare.net 11

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Spitfire: Template Lightning Talk Spitfire: Template Lightning Talk Presentation Transcript

  • All Template Languages Suck Suck Suck
  • aka
  • Why another template language?
  • Because we can™
  • (Who’s “we”?)
  • Mike / YouTube
  • (f**king genius)
  • Yours truly
  • (markup obsessive)
  • Also, because
  • All Template Languages Suck Suck Suck
  • Why do they suck?
  • Let me count the ways…
  • Either they look like this
  • UGLY <p class=”<?php someClass() ?>”> <?php callSomeFunction() ?> </p>
  • Or they perform like this
  •  
  • We can do better
  • We want
  • NICE <p tal:content=”context/something”> Text goes here </p>
  • and
  •  
  • What are your current options?
    • TAL
    • Genshi
    • Myghty/Mako
    • Cheetah
    • Your own
  • Let’s do a simple benchmark
  • Standardized test bigtable.py http ://genshi.edgewall.org/wiki/GenshiPerformance · obviously synthetic · 10×1000 table render · measures pure throughput · measures pure throughput · measures pure throughput · measures pure throughput · measures pure throughput · measures pure throughput · measures pure throughput · measures pure throughput
  • Rendering times
  •  
  •  
  • 100% Python goodness
  • Current version: Compiler: ~2000 LoC Runtime: 150 LoC Runtime: 150 LoC Runtime: 150 LoC Runtime: 150 LoC
  • Compiles templates to bytecode
  • Pluggable syntax
  • Both XML and text modes
  • Rendering times
  • Rendering times
  • Rendering times