Monday 25 June 2007

Waiting for Frankel's book

The book has not arrived yet: I have been waiting for it for some time.

For the time being let's see what the following document says about semantics of UML:

http://etna.int-evry.fr/COURS/UML/semantics/index.html
http://www.ii.uib.no/~rolfwr/thesisdoc/main.html

UML is aimed to help object-oriented articulation of software behaviour: as such it intends to be more declarative than operational (I wonder what has become of its "action semantics" component) and focusses on a lot of static aspects of OOPL-oriented modelling. This stems from two distinct natures in OOPL: its "message passing" (MP) side and its "knowledge representation" (KR) side. The MP side has a long tradition since Lisp (functions), Algol/Pascal/C (procedures) while the latter was originally an AI concept. We remember that the former aspect has been purified by researchers such as CSP, actors and CCS and later in the form of the pi-calculus.

The latter, the KR side, is in fact dynamic in nature in Simula and more recent executable OOPLs: but the declarative nature --- and usability as such --- of such notions as class hierarchy, attributes, instances, etc. was hard to hide from people's eyes, and some people thought of making the best of these ideas --- which does have operational side too but they can be hidden if you like --- as a way to organise modelling process and resulting artifacts, somewhat keeping the dynamic side of OOPL hidden.

I will continue on this topic in the next post tomorrow.