Lambda the Ultimate

inactiveTopic Model Driven Architecture + Code Generation
started 12/24/2002; 3:12:08 PM - last post 12/25/2002; 3:34:31 PM
Ehud Lamm - Model Driven Architecture + Code Generation  blueArrow
12/24/2002; 3:12:08 PM (reads: 2000, responses: 6)
Model Driven Architecture + Code Generation
A nice introduction to Model Driven Architecture (MDA). This is not really a langugae issue but language designers and implementors should take notice of the fact that many programmers prefer to use drawing tools rather then compilers

The article lists ten myths about code generation and code generation tools. In industry you often find the deparment responsible for building langugae tools (DSL processors and the like) also responsible for IDEs and GUIs that rely on code generation. And even if building such tools isn't something you do daily, you may find yourself having to process code that was generated by such systems.

Alex has some comments about myth 7: I'll just use XML/XSLT and be done with it.


Posted to OOP by Ehud Lamm on 12/24/02; 3:15:02 PM

Michael Vanier - Re: Model Driven Architecture + Code Generation  blueArrow
12/24/2002; 8:25:00 PM (reads: 840, responses: 0)
Is it me, or are people simply re-inventing lisp macros for the 1,000,000th time? Many aspects of this article struck me as things that could be done very elegantly using macros. Of course, lisp macros don't work on graphical representations, but I don't consider that a very deep problem (you just have to define a code representation of the graphical representation).

The approach described in the article seems plausible enough, but I can't help wondering if the people who espouse approaches like these are the same folks who say "macros in a computer language -- no, that's way too dangerous!" Maybe the clean separation between the input and output of the code transformer is what makes it palatable to them, in which case it's really just a kind of compiler. Nothing wrong with that, of course.

Ehud Lamm - Re: Model Driven Architecture + Code Generation  blueArrow
12/25/2002; 12:57:32 AM (reads: 817, responses: 0)
If only they programmed in Lisp...

Frank Atanassow - Re: Model Driven Architecture + Code Generation  blueArrow
12/25/2002; 7:21:01 AM (reads: 807, responses: 0)
This is terribly off-topic but, in Mozilla, because the figures in the article are so wide, the paragraph width is concomittantly increased to such a figure as to make the text virtually unreadable. AFAIK, every other browser will share this display behavior. Which leads me to wonder whether a) the authors/editors missed this glaringly obvious fact or b) most of the readers know a way to adjust their browser's behavior to account for it... (All I can think of is turning off autoloading of images.)

Any ideas? Or am I the only person to suffer so? :)

Patrick Logan - Re: Model Driven Architecture + Code Generation  blueArrow
12/25/2002; 10:22:09 AM (reads: 782, responses: 1)
This is not really a language issue

Why not? Programming languages are symbolic notations for computation. "Two dimensional" diagrams are also just symbolic notations for computations.

are people simply re-inventing lisp macros...?

I would answer yes, in the sense that the developers of these tools have provided a "higher level notation" for simplifying what would be more complex notations.

Maybe the clean separation between the input and output of the code transformer is what makes it palatable to them, in which case it's really just a kind of compiler. Nothing wrong with that, of course.

I think this is exactly the point of MDA... simplifying the notations required to implement common architectures, and to be able to re-target high-level specifications to multiple target architectures.

We need to be able to get more non-CS developers creating maintainable systems. Even Scheme and Haskell are too low level for this audience. These current MDA notations need a lot of improvement, but they are a step in the right direction.

This is terribly off-topic but, in Mozilla, because the figures in the article are so wide, the paragraph width is concomittantly increased to such a figure as to make the text virtually unreadable.

I had no problems with Mozilla 1.2.1.

Ehud Lamm - Re: Model Driven Architecture + Code Generation  blueArrow
12/25/2002; 10:34:34 AM (reads: 801, responses: 0)
It seems to me that the ore issue is the kinds of software abstractions programming languages support. MDA is about OOP languages, and classes are simply not good enough.

Ehud Lamm - Re: Model Driven Architecture + Code Generation  blueArrow
12/25/2002; 3:34:31 PM (reads: 777, responses: 0)
Notice that I was mainly talking about building code generators.

More input, from a user's perspective.