As a language developer, you can
build this support right into the language. You may also consider doing integration via
transformations, but that seldom works, as explained in more detail next.
10.5.1 Integration Approaches
The best way to integrate languages depends on the number of views, how model data
needs to be available to developers, and whether there is a need to keep developers in
separate modeling spaces or modeling is based on reusing others??™ work. Figure 10.9
illustrates the most typical approaches.
The ?¬?rst approach is to keep the languages separate and integrate them at
generation time. This approach makes things simple for the language developer but
more dif?¬?cult for modelers and generator developers. This is reasonable if you need to
FIGURE 10.9 Language integration approaches
INTEGRATING MULTIPLE LANGUAGES 253
keep the modelers separate or they don??™t need to interact. For example, while using
subcontractors you may decide to keep some models for internal use only and have
another language for subcontractors. It can also be that the nature of modeling work
differs among developers so that all groups don??™t need access to others??™ work. This
approach naturally makes generator development more dif?¬?cult as it can??™t guarantee
via language rules that models are correct.
Pages:
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461