CTPP

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

CTPP
Stable release
2.8.2 / August 15, 2012 (2012-08-15)
Written inC++
Typelibrary or framework
LicenseBSD License
Websitectpp.havoc.ru/en

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.

gollark: I guess.
gollark: And someone could just change a bit and make it not match.
gollark: But then you have to manually gather them.
gollark: The bot might be using a different media processing stack and play something which implodes Chrome's without any issues.
gollark: I don't think I've ever actually had any crashing-GIF issues anyway since I run Discord in Firefox.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.