|Re: Make Acceleo usable by non-programmers [message #1833922 is a reply to message #1833919]
||Tue, 27 October 2020 20:07
| Ed Willink
Registered: July 2009
Sorry, I must take issue with the title and intent of this thread.
I am a huge fan of modeling and modeling tools in principle, but have to recognize that evolution-wise we are in a similar position to the early days of C; a great abstraction that didn't always work quite right, so you had to dig under the C to understand the bad code generation and stack corruption. The same is true with modeling, the models are great, but the tools are temperamental, great on a good day, but far too often a bad day really burns time.
Yesterday's OCL thread questioned using Date in OCL. This partially happens by EMF wrapping java.util.Date as the EDate EDataType but EDate has no operations, so any non-trivial usage of Date needs to tunnel through OCL to the Java API. Oops, OCL is a 'perfect' abstraction, no such tunneling available (yet).
I therefore question whether tools such as Acceleo can be realistically used by non-programmers until the modeling tools get a huge injection of maturity.
In the particular case of Acceleo there is a philosophical challenge; MOFM2T is a 'perfect' M2T abstraction, so it's impossible to contribute Java, Acceleo adds invoke but has minimal wizard/checking. Rewriting main is not often considered to structure the outer control. In contrast, Xtend adds syntactically rather similar String templates to an obfuscated Java, so that you can structure your outer and your inner code. This gives vastly more power and debuggability for a programmer. Unfortunately Xtend's tooling has many deficiencies, but I find them much less debilitating than Acceleo's.
Powered by FUDForum
. Page generated in 0.01774 seconds