Changes for page Kieler Compiler

Last modified by Richard Kreissig on 2023/09/14 10:52

From version 33.2
edited by cmot
on 2023/07/11 10:26
Change comment: Update document after refactoring.
To version 26.1
edited by cmot
on 2014/06/26 15:14
Change comment: There is no comment for this version

Summary

Details

Page properties
Parent
... ... @@ -1,1 +1,0 @@
1 -Kieler.SCCharts.Previous Versions (Deprecated Documentation).WebHome
Content
... ... @@ -1,8 +1,4 @@
1 -{{panel bgColor="orange" title="Deprecated since 0.13"}}
2 -This article is deprecated. The described features are no longer available in current releases.
3 -{{/panel}}
4 -
5 -{{panel borderStyle="dashed" title="Project Overview"}}
1 +{{panel title="Project Overview" borderStyle="dashed"}}
6 6  Responsible:
7 7  
8 8  * [[Christian Motika>>url:http://www.informatik.uni-kiel.de/rtsys/kontakt/cmot/||shape="rect"]], [[Steven Smyth>>url:http://www.informatik.uni-kiel.de/rtsys/kontakt/ssm/||shape="rect"]]
... ... @@ -11,12 +11,12 @@
11 11  
12 12  * none yet
13 13  
14 -**To see the KielerCompiler in action, we provide an Online SCCharts Compiler [[here>>doc:KIELER.Home.SCCharts.Previous Versions (Deprecated Documentation).SCCharts (pre 1\.0).Online Compiler.WebHome]].**
10 +**To see the KielerCompiler in action, we provide an Online SCCharts Compiler [[here>>doc:Online Compiler]].**
15 15  {{/panel}}
16 16  
17 17  = Kieler Compiler (KiCo) =
18 18  
19 -In order to integrate and be able to evaluate our compiler chain from SCCharts to C or VHDL code we use the KiCo project as a generic framework that allows to register setp-by-step transformations on EObjects. These can then be handled by the generic KIEM KiCo DataComponent. **To see the KielerCompiler in action, we provide an Online SCCharts Compiler [[here>>url:http://www.sccharts.com/||shape="rect"]].**
15 +In order to integrate and be able to evaluate our compiler chain from SCCharts to C or VHDL code we use the KiCo project as a generic framework that allows to register setp-by-step transformations on EObjects. These can then be handled by the generic KIEM KiCo DataComponent.
20 20  
21 21  
22 22  
... ... @@ -26,18 +26,11 @@
26 26  
27 27  The KIELER Compiler (KiCo) project allows to register step-by-step model transformations on EObjects that could be written in Xtend or Java. These transformations are registered using an extension point provided (see below). After registering transformations these can be used by simply call the KielerCompiler compilation method as also explained further below.
28 28  
29 -(% class="wrapped" %)
30 30  |=(((
31 -(% class="content-wrapper" %)
32 -(((
33 33  [[image:attach:IMAG4642.jpg]]
34 -)))
35 35  )))|=(((
36 -(% class="content-wrapper" %)
37 -(((
38 38  [[image:attach:KiCo.jpg]]
39 39  )))
40 -)))
41 41  
42 42  == Extension Point ==
43 43  
... ... @@ -48,16 +48,14 @@
48 48  
49 49  {{{de.cau.cs.kieler.kico}}}
50 50  
51 -\\
40 +
52 52  )))
53 53  1. Add the extension
54 54  
55 -{{{de.cau.cs.kieler.kico.transformation}}}
56 56  
57 -(((
58 -\\
45 +{{{de.cau.cs.kieler.kico.transformation}}}(((
46 +
59 59  )))
60 -
61 61  1. (((
62 62  Add one of the following extension element
63 63  
... ... @@ -64,7 +64,6 @@
64 64  [[image:attach:KiCo2.jpg]]
65 65  )))
66 66  
67 -(% class="wrapped" %)
68 68  |=(((
69 69  Extension Element
70 70  )))|=(((
... ... @@ -135,13 +135,12 @@
135 135   </extension>
136 136  {{/code}}
137 137  
138 -\\
124 +
139 139  
140 140  == Compilation ==
141 141  
142 142  Once a bunch of model transformations are registered, these can simply be called using the KiCo central "KielerCompiler" class with its method compile(). This will be given a List<String> of transformation IDs or a comma separated String of transformation IDs as the first parameter. The second parameter is the EObject that is being transformed. It should meet the signature of the first model transformation called. Note that the actual model transformations that are done may vary because KiCo will automatically inspect the dependencies of each transformation requested (deep-recursively). If you do not like this to happen as an advanced user you can use a third parameter that will skip this autocompletion. Note that if you switch this off also NO transformation groups can be processed. Here is an overview and examples how to use the compile() method:
143 143  
144 -(% class="wrapped" %)
145 145  |=(((
146 146  Method
147 147  )))|=(((
... ... @@ -164,6 +164,7 @@
164 164  This is a convenient method only which can be used to give transformation IDs or transformation group IDs as a comma separated String. For eObject and the return value see above.
165 165  )))
166 166  |(((
152 +
167 167  \\
168 168  
169 169  {{{EObject KielerCompiler.compile(List&#x3c;String&#x3e; transformationIDs, EObject eObject, boolean autoexpand)}}}
... ... @@ -200,28 +200,19 @@
200 200  
201 201  === Requirement Completion ===
202 202  
203 -\\
189 +
204 204  
205 -(% class="wrapped" %)
206 206  |=(((
207 -(% class="content-wrapper" %)
208 -(((
209 209  (% style="text-align: center;" %)
210 210  Original
211 211  
212 -(% class="wrapped" %)
213 213  |=(((
214 -(% class="content-wrapper" %)
215 -(((
216 216   [[image:attach:dependencies2.jpg]]
217 217  
218 218  (% style="text-align: center;" %)
219 219  Original Dependency
220 220  Graph
221 -)))
222 222  )))|=(((
223 -(% class="content-wrapper" %)
224 -(((
225 225  (% style="text-align: center;" %)
226 226  [[image:attach:dependencies3.jpg]]
227 227  
... ... @@ -231,29 +231,19 @@
231 231  implementations
232 232  for Abort
233 233  )))
234 -)))
235 235  
236 -\\
237 -)))
212 +
238 238  )))|=(((
239 -(% class="content-wrapper" %)
240 -(((
241 241  (% style="text-align: center;" %)
242 242  Example 1
243 243  
244 -(% class="wrapped" %)
245 245  |=(((
246 -(% class="content-wrapper" %)
247 -(((
248 248   [[image:attach:dependencies4.jpg]]
249 249  
250 250  (% style="text-align: center;" %)
251 251  Selected for
252 252  transformation
253 -)))
254 254  )))|=(((
255 -(% class="content-wrapper" %)
256 -(((
257 257   [[image:attach:dependencies4b.jpg]]
258 258  
259 259  (% style="text-align: center;" %)
... ... @@ -260,37 +260,26 @@
260 260  Auto selected
261 261  requirements
262 262  )))
263 -)))
264 264  
265 -\\
231 +
266 266  )))
267 -)))
268 268  
269 -\\
234 +
270 270  
271 -\\
236 +
272 272  
273 -(% class="wrapped" %)
274 274  |=(((
275 -(% class="content-wrapper" %)
276 -(((
277 277  (% style="text-align: center;" %)
278 278  Example 2
279 279  
280 -(% class="wrapped" %)
281 281  |=(((
282 -(% class="content-wrapper" %)
283 -(((
284 284  [[image:attach:dependencies5.jpg]]
285 285  
286 286  (% style="text-align: center;" %)
287 287  Selected for
288 288  transformation
289 -)))
290 290  )))|=(% style="text-align: center;" %)(% style="text-align: center;" %)
291 291  (((
292 -(% class="content-wrapper" %)
293 -(((
294 294  [[image:attach:dependencies5b.jpg]]
295 295  
296 296  Auto selected
... ... @@ -299,31 +299,21 @@
299 299  of alternative
300 300  group
301 301  
302 -\\
258 +
303 303  )))
304 -)))
305 305  
306 -\\
307 -)))
261 +
308 308  )))|=(((
309 -(% class="content-wrapper" %)
310 -(((
311 311  (% style="text-align: center;" %)
312 312  Example 3
313 313  
314 -(% class="wrapped" %)
315 315  |=(((
316 -(% class="content-wrapper" %)
317 -(((
318 318  [[image:attach:dependencies6.jpg]]
319 319  
320 320  (% style="text-align: center;" %)
321 321  Selected for
322 322  transformation
323 -)))
324 324  )))|=(((
325 -(% class="content-wrapper" %)
326 -(((
327 327  [[image:attach:dependencies6b.jpg]]
328 328  
329 329  (% style="text-align: center;" %)
... ... @@ -332,19 +332,16 @@
332 332  using selected
333 333  alternative
334 334  )))
335 -)))
336 336  
337 -\\
282 +
338 338  )))
339 -)))
340 340  
341 -\\
285 +
342 342  
343 343  == Help / Problems / FAQs ==
344 344  
345 345  Maybe you get into problems when using KiCo. The following list should give you hints to solve these. If you have a problem not considered here please write us an e-mail (see above for contact information of the persons in charge of KiCo).
346 346  
347 -(% class="wrapped" %)
348 348  |=(((
349 349  Symptom
350 350  )))|=(((
... ... @@ -356,9 +356,7 @@
356 356  You get the following run time error:
357 357  
358 358  
359 -
360 -
361 -\\\\\\\\\\\\[[java:102>>url:http://java:102||shape="rect"]]
302 +\\\\\\\\\\\\\\\\[[java:102>>url:http://java:102||shape="rect"]]
362 362  [[java:136>>url:http://java:136||shape="rect"]]
363 363  [[java:164>>url:http://java:164||shape="rect"]]\\
364 364  
... ... @@ -375,7 +375,7 @@
375 375  Maybe the plugin declaring "ABORT2" was not loaded
376 376  or the ID is misspelled.
377 377  
378 -\\
319 +
379 379  )))|(((
380 380  Check why "ABORT2" may not be found
381 381  by KiCo, more specifically, check if the
IMAG4642.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -1.5 MB
Content
KiCo.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -138.2 KB
Content
KiCo2.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -5.0 KB
Content
KiCo3.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -166.2 KB
Content
dependencies2.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -170.9 KB
Content
dependencies2.pdf
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -18.5 KB
Content
dependencies3.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -242.8 KB
Content
dependencies4.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -252.6 KB
Content
dependencies4b.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -260.5 KB
Content
dependencies5.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -249.6 KB
Content
dependencies5b.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -281.7 KB
Content
dependencies6.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -258.3 KB
Content
dependencies6b.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.XWikiGuest
Size
... ... @@ -1,1 +1,0 @@
1 -283.2 KB
Content
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -9470057
1 +9471252
URL
... ... @@ -1,1 +1,1 @@
1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/9470057/Kieler Compiler
1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/9471252/Kieler Compiler