This is a follow up to David Schmidt's position paper "On the Need for a Popular Formal Semantics" [ref1]( ). We should explore the use of the Unified Modeling Language (UML) and the Object Constraint Language(OCL) as popular way to express semantics.
I prefer languages with mathematical semantics for specifying software. However, a "multi-level approach" works better with practitioners. With syntax we have
I have no associations with Rational or the other proponents of the UML. I've been forced ( as part of a department project [footnote] ) to confront the question
I'm be incorporating the UML into my documentation of notations on the World Wide Web [ref2]. This is a repository of information for practicing programmers and students of computing. It is a semiformal, indexed, and searchable hypertext based on a highly extended BNF. I'm looking at the possibilities for an axiomatic and denotational semantics within the UML model. I worry about the abscence of mathematical semantics for objects. The UML and the OCL need a published mathematical theory.
Here are two models that illustraate the above:
footnote
The ROOT project at the Computer Science Department,
CSUSB
[ rootproj ]
This project put object-oriented technology into the core of the CSUSB
Computer Science Bachelor's degree. The project was supported by an award
from a CSUSB Learning Productivity Grant from September 1997 to December
1998. I was tasked to add the UML to our "Concepts of Programming
Language" course
[ cs320 ]