Trisha Shetty (Editor)

CTPP

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Written in
  
C++

License
  
BSD License

Type
  
library or framework

Website
  
ctpp.havoc.ru/en

CTPP

Stable release
  
2.7.1 / July 5, 2011 (2011-07-05)

CTPP (or CT++) is a template engine completely written in C++. It has bindings for Perl, PHP and Python languages.

Contents

Features

  • Performance
  • Flexible syntax of templates
  • Robustness
  • Portability
  • Support for implementations in the language of your choice
  • Unlimited levels of nested cycles and conditions
  • User functions
  • Architecture

    The MVC paradigm divides an application into three basic entities: a set of Models, a Controller, and the View.

    A classic implementation completely isolates these entities from each other. It is assumed that a View doesn’t process any data and only renders a corresponding object model according to the template, that a Controller is only used to determine the list of executed models, and that Models represent entirely abstract data sets and rules that govern the data.

    This paradigm allows separating the functions of a web designer, a programmer and a manager. A lot of the code can be reused. In addition a project has a single entry point which facilitates its upgrading and development.

    As represented in the diagram below the architecture of the template engine consists of 4 subsystems: a template compiler which converts the text of the page template into bytecode, a virtual machine which executes the bytecode, a caching system for templates, and a library of data processor functions.

    References

    CTPP Wikipedia