Noeud « Next »: , Noeud « Up »: T5



4.7.1 T5 Goals

Things to learn during this stage that you should remember:

“Functional” programming in C++
See for instance the use of std::binary_function to sort Temp*.
Traits
Traits are a useful technique that allows to write (compile time) functions ranging over types. Voir Glossary.
Lazy/delayed computation
The Ix, Cx, Nx, and Ex classes delay computation to address context-depend issues in a context independent way.
Intermediate Representations
A different approach of hierarchies
In this project, the ast is composed of different classes related by inheritance (as if the kinds of the nodes were class members). Here, the nodes are members of a single class, but their nature is specified by the object itself (as if the kinds of the nodes were object members).