69 text {* |
69 text {* |
70 Figure \ref{fig:adaptation} illustrates what \qt{adaptation} is |
70 Figure \ref{fig:adaptation} illustrates what \qt{adaptation} is |
71 conceptually supposed to be: |
71 conceptually supposed to be: |
72 |
72 |
73 \begin{figure}[here] |
73 \begin{figure}[here] |
74 \includegraphics{adapt} |
74 \begin{tikzpicture}[scale = 0.5] |
|
75 \tikzstyle water=[color = blue, thick] |
|
76 \tikzstyle ice=[color = black, very thick, cap = round, join = round, fill = white] |
|
77 \tikzstyle process=[color = green, semithick, ->] |
|
78 \tikzstyle adaptation=[color = red, semithick, ->] |
|
79 \tikzstyle target=[color = black] |
|
80 \foreach \x in {0, ..., 24} |
|
81 \draw[style=water] (\x, 0.25) sin + (0.25, 0.25) cos + (0.25, -0.25) sin |
|
82 + (0.25, -0.25) cos + (0.25, 0.25); |
|
83 \draw[style=ice] (1, 0) -- |
|
84 (3, 6) node[above, fill=white] {logic} -- (5, 0) -- cycle; |
|
85 \draw[style=ice] (9, 0) -- |
|
86 (11, 6) node[above, fill=white] {intermediate language} -- (13, 0) -- cycle; |
|
87 \draw[style=ice] (15, -6) -- |
|
88 (19, 6) node[above, fill=white] {target language} -- (23, -6) -- cycle; |
|
89 \draw[style=process] |
|
90 (3.5, 3) .. controls (7, 5) .. node[fill=white] {translation} (10.5, 3); |
|
91 \draw[style=process] |
|
92 (11.5, 3) .. controls (15, 5) .. node[fill=white] (serialisation) {serialisation} (18.5, 3); |
|
93 \node (adaptation) at (11, -2) [style=adaptation] {adaptation}; |
|
94 \node at (19, 3) [rotate=90] {generated}; |
|
95 \node at (19.5, -5) {language}; |
|
96 \node at (19.5, -3) {library}; |
|
97 \node (includes) at (19.5, -1) {includes}; |
|
98 \node (reserved) at (16.5, -3) [rotate=72] {reserved}; % proper 71.57 |
|
99 \draw[style=process] |
|
100 (includes) -- (serialisation); |
|
101 \draw[style=process] |
|
102 (reserved) -- (serialisation); |
|
103 \draw[style=adaptation] |
|
104 (adaptation) -- (serialisation); |
|
105 \draw[style=adaptation] |
|
106 (adaptation) -- (includes); |
|
107 \draw[style=adaptation] |
|
108 (adaptation) -- (reserved); |
|
109 \end{tikzpicture} |
75 \caption{The adaptation principle} |
110 \caption{The adaptation principle} |
76 \label{fig:adaptation} |
111 \label{fig:adaptation} |
77 \end{figure} |
112 \end{figure} |
78 |
113 |
79 \noindent In the tame view, code generation acts as broker between |
114 \noindent In the tame view, code generation acts as broker between |