MDA, OCL and prolog

MDA, OCL and prolog

From: Jean-Marie Favre <>
Date: Thu, 18 May 2006 09:34:40 +0200
Message-ID: <>

Basically the question is : is anybody have some references about work
between OCL constraints and prolog (more generally constraint programming) ?

We are starting with a student and a colleague expert in constraint 
a study to evaluate the current state of the art between MDA/OCL and the
prolog technical space (here prolog is just an example, but at least it 
what we want). I mean OCL can serve both as a constraint language and as
a query language. In the MDA community, the emphasis being on code 
nd direct executability, OCL is used to implement body of methods, 
initial values, etc.
That is, constraints of the form  self.X = ... where ... is an OCL 
constraint are
well support by tools. With this restriction OCL can be seen as a 
language of expression
or functional language. I guess that commercial tools based on OCL like 
Bold from
borland, really support this subset of OCL.

On the other way around to specifiy software one can write invariants, 
pre and post
conditions but obviously you can  have arbitrary constraint such as   
self.X + self.Y < self.Z
or whatever. The usual process is at some point to convert manually 
these general
constraints into expressions.

They are some work that goes from MDA technical space to
functionnal programming such as MDA to Maude (if I'm not
wrong they are no such thing such as a constrain solver in this case)
but what about   MDA <--> prolog for instance. My understanding
is that OCL and let's say prolog  comes from different research
communities, hence they are no so many work trying to join them.
If MDA <--> Maude is a really nice merge (see for instance 
the MOMENT project,
what about MDA <--> prolog

Thanks for any comments

p.s. if neither a specialist of maude, nor prolog, nor constraint 
That's why I'm asking that question :-)

Jean-Marie Favre
Received on Thu 18 May 2006 - 08:34:34 BST