Changes for page Kieler Compiler
Last modified by Richard Kreissig on 2023/09/14 10:52
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -6,11 +6,13 @@ 6 6 Related Theses: 7 7 8 8 * none yet 9 + 10 +**To see the KielerCompiler in action, we provide an Online SCCharts Compiler [[here>>doc:Online Compiler]].** 9 9 {{/panel}} 10 10 11 11 = Kieler Compiler (KiCo) = 12 12 13 -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. 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. **To see the KielerCompiler in action, we provide an Online SCCharts Compiler [[here>>doc:Online Compiler]].** 14 14 15 15 16 16 ... ... @@ -20,7 +20,11 @@ 20 20 21 21 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. 22 22 25 +|=((( 26 +[[image:attach:IMAG4642.jpg]] 27 +)))|=((( 23 23 [[image:attach:KiCo.jpg]] 29 +))) 24 24 25 25 == Extension Point == 26 26 ... ... @@ -69,7 +69,7 @@ 69 69 * method: The name of the transformation method. Its signature must ensure that it returns an EObject an only take an EObject argument. Otherwise it cannot be found by KiCo. 70 70 * id: The unique String ID for this transformation. This is the ID the transformation will be referenced throughout KiCo. 71 71 * name: An optional String name for this transformation. If nothing is entered here the ID will be used as a name. 72 -* dependencies: An optional String as comma separated list of other transformation IDs that must run BEFORE this transformation. If nothing is entered here then this means there are no dependencies.78 +* dependencies: An optional String as comma separated list of other transformation IDs that must run AFTER this transformation down the compile-chain. This means if the current transformation is selected to run, all transformations that have dependencies on this will be run BEFORE. If nothing is entered here then this means there are no dependencies. 73 73 ))) 74 74 |((( 75 75 transformationGroup ... ... @@ -92,9 +92,7 @@ 92 92 dependencies="TRIGGEREFFECT, SURFACEDEPTH" 93 93 name="Transform All Normalize"> 94 94 </transformationGroup> 95 - </extension> 96 - <extension 97 - point="de.cau.cs.kieler.kico.transformation"> 101 + 98 98 <transformationMethod 99 99 class="de.cau.cs.kieler.sccharts.extensions.SCChartsCoreTransformation" 100 100 id="TRIGGEREFFECT" ... ... @@ -101,10 +101,7 @@ 101 101 method="transformTriggerEffect" 102 102 name="Transform Trigger and Effect"> 103 103 </transformationMethod> 104 - </extension> 105 - 106 - <extension 107 - point="de.cau.cs.kieler.kico.transformation"> 108 + 108 108 <transformationMethod 109 109 class="de.cau.cs.kieler.sccharts.extensions.SCChartsCoreTransformation" 110 110 id="SURFACEDEPTH" ... ... @@ -111,10 +111,7 @@ 111 111 method="transformSurfaceDepth" 112 112 name="Transform Surface Depth"> 113 113 </transformationMethod> 114 - </extension> 115 - 116 - <extension 117 - point="de.cau.cs.kieler.kico.transformation"> 115 + 118 118 <transformationGroup 119 119 id="ALL" 120 120 dependencies="CORE NORMALIZE" ... ... @@ -186,6 +186,106 @@ 186 186 187 187 {{/code}} 188 188 187 +=== Requirement Completion === 188 + 189 + 190 + 191 +|=((( 192 +(% style="text-align: center;" %) 193 +Original 194 + 195 +|=((( 196 + [[image:attach:dependencies2.jpg]] 197 + 198 +(% style="text-align: center;" %) 199 +Original Dependency 200 +Graph 201 +)))|=((( 202 +(% style="text-align: center;" %) 203 +[[image:attach:dependencies3.jpg]] 204 + 205 +(% style="text-align: center;" %) 206 +Two alternative 207 +transformation 208 +implementations 209 +for Abort 210 +))) 211 + 212 + 213 +)))|=((( 214 +(% style="text-align: center;" %) 215 +Example 1 216 + 217 +|=((( 218 + [[image:attach:dependencies4.jpg]] 219 + 220 +(% style="text-align: center;" %) 221 +Selected for 222 +transformation 223 +)))|=((( 224 + [[image:attach:dependencies4b.jpg]] 225 + 226 +(% style="text-align: center;" %) 227 +Auto selected 228 +requirements 229 +))) 230 + 231 + 232 +))) 233 + 234 + 235 + 236 + 237 + 238 +|=((( 239 +(% style="text-align: center;" %) 240 +Example 2 241 + 242 +|=((( 243 +[[image:attach:dependencies5.jpg]] 244 + 245 +(% style="text-align: center;" %) 246 +Selected for 247 +transformation 248 +)))|=(% style="text-align: center;" %)(% style="text-align: center;" %) 249 +((( 250 +[[image:attach:dependencies5b.jpg]] 251 + 252 +Auto selected 253 +requirements 254 +using DEFAULT 255 +of alternative 256 +group 257 + 258 + 259 +))) 260 + 261 + 262 +)))|=((( 263 +(% style="text-align: center;" %) 264 +Example 3 265 + 266 +|=((( 267 +[[image:attach:dependencies6.jpg]] 268 + 269 +(% style="text-align: center;" %) 270 +Selected for 271 +transformation 272 +)))|=((( 273 +[[image:attach:dependencies6b.jpg]] 274 + 275 +(% style="text-align: center;" %) 276 +Auto selected 277 +requirements 278 +using selected 279 +alternative 280 +))) 281 + 282 + 283 +))) 284 + 285 + 286 + 189 189 == Help / Problems / FAQs == 190 190 191 191 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).
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 -9 4700861 +25952291 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/9 470086/Kieler Compiler1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/25952291/Kieler Compiler