1[example {
2                                           USER
3                                            |
4                                        Common API
5                                            |
6                +---------------------------+---------------------------+
7                |                           |                           |
8
9           Interpreted               Specialized Tcl              Specialized C
10    +------------------------+  +------------------------+  +------------------------+
11    | [container] +          |  | [snit or TclOO]        |  | C code alone or embed- |
12    | pt::peg::interp        |  |                        |  | ded in Tcl (Critcl)    |
13    +========================+  +========================+  |                        |
14    | pt::rde                |  | pt::rde                |  |                        |
15    |                        |  |                        |  |                        |
16    | Tcl           | Critcl |  | Tcl           | Critcl |  |                        |
17    +===============+        |  +===============+        |  |                        |
18    | struct::stack |        |  | struct::stack |        |  |                        |
19    |               |        |  |               |        |  |                        |
20    | Tcl  | Critcl |        |  | Tcl  | Critcl |        |  |                        |
21    +------+--------+--------+  +------+--------+--------+  +------------------------+
22}]
23