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

Like this? Share it with your network

Share

Spitfire: Template Lightning Talk

on

  • 5,728 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,728
Views on SlideShare
5,717
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 Presentation Transcript

  • 1. All Template Languages Suck Suck Suck
  • 2. aka
  • 3. Why another template language?
  • 4. Because we can™
  • 5. (Who’s “we”?)
  • 6. Mike / YouTube
  • 7. (f**king genius)
  • 8. Yours truly
  • 9. (markup obsessive)
  • 10. Also, because
  • 11. All Template Languages Suck Suck Suck
  • 12. Why do they suck?
  • 13. Let me count the ways…
  • 14. Either they look like this
  • 15. UGLY <p class=”<?php someClass() ?>”> <?php callSomeFunction() ?> </p>
  • 16. Or they perform like this
  • 17.  
  • 18. We can do better
  • 19. We want
  • 20. NICE <p tal:content=”context/something”> Text goes here </p>
  • 21. and
  • 22.  
  • 23. What are your current options?
  • 24.
    • TAL
    • Genshi
    • Myghty/Mako
    • Cheetah
    • Your own
  • 25. Let’s do a simple benchmark
  • 26. 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
  • 27. Rendering times
  • 28.  
  • 29.  
  • 30. 100% Python goodness
  • 31. Current version: Compiler: ~2000 LoC Runtime: 150 LoC Runtime: 150 LoC Runtime: 150 LoC Runtime: 150 LoC
  • 32. Compiles templates to bytecode
  • 33. Pluggable syntax
  • 34. Both XML and text modes
  • 35. Rendering times
  • 36. Rendering times
  • 37. Rendering times