In computer software programming languages history, Pliant is the first attempt to connect C and LISP branches.
It was written by Hubert Tonneau, first published in 1999, and is released under GNU General Public License version 2.
Bring raw efficiency and high expressivity at once.
Focus on program encoding as opposed to language features.
Pliant is based on two main main concepts:
First, the program is successively encoded in four precisely defined models:
- Source code
- Expressions tree
- Instructions list
Then, the three transitions between these four models can freely be changed at application level because the compiler is dynamic and reflexive.
As a result, Pliant meta programming is no more defined as syntactical rewriting as in LISP, but as a transition from the free semantic expressions tree model to the fixed semantic and efficient instructions list model. It has two consequences:
- a Pliant meta function is not only extending the semantic of the language, but is also responsible for providing efficient execution
- it avoids uncontrolled side effects between various extensions
A full computing system, named FullPliant has since been provided that is:
- A proof of concept that the language can be efficiently used in many areas (database engine, graphical stack, web framework, etc)
- A smaller, so easier to adapt, overall computing system
Full article ▸