Summary: Structural operational semantics and OO implementation (Marisa Barja)
Sun, 15 Aug 1993 14:00:00 GMT

          From comp.compilers

Related articles
Summary: Structural operational semantics and OO implementation (1993-08-15)
| List of all articles for this month |

Newsgroups: comp.compilers
From: (Marisa Barja)
Keywords: summary, semantics
Organization: Compilers Central
Date: Sun, 15 Aug 1993 14:00:00 GMT

Many thanks to those who replied to my posting about structural operational
semantics and object-oriented implementation of programming languages.
Although there were only a few responses, many have asked to post a summary,
which is included below.
Further information on this topic is still very welcome.

  M L Barja Database Research Group
  email : Department of Computing and EEng.
  phone : (+44)(0)31 449 5111 ext 4191 Heriot-Watt University
                                                                                    Riccarton, Edinburgh EH14 4AS, U.K.


I am working on a project implementing an object oriented database programming
language from its structural operational semantics using E/EXODUS (a
persistent version of C++).

I have three questions that I hope the net can help me to answer, preferably
with some bibliographical references:

Does anybody know...

      1. ... of object oriented languages defined in terms of
            their structural operational semantics?

      2. ... of compilers/interpreters implemented using an object oriented

      3. ... of any language both defined in terms of structural operational
            semantics and implemented in an object oriented fashion (i.e. a
            combination of 1. and 2.)?

Please answer by e-mail. If there is interest, I will summarize the responses
to the net.

Thanks in advance,

M.L. Barja


>From!dimock Fri Aug 6 18:54:08 1993

For structural semantics of Object oriented languages:
There is a paper on the natural semantics of TOOPLE availble in
pub/kim on (also in MFCS 93 proceedings).

-- Allyn

>From!BBURSHTE Sat Aug 7 01:08:31 1993

      2. ... of compilers/interpreters implemented using an object oriented

I have written a full LR1 minimal state parser generator using C++. Its LR1
table generation algorithm has been designed and coded by using OO

Also, this parser-generator, called USSA (Universal Syntax and Semantics
Analyzer), emits C++ objects for tables, parsers, lexers, and generators. It
accepts definition of C++ classes annotated with context-free grammars. Such
annotated classes are called types. As C++ classes, types can form a hierarchy
so that derived types inherit grammars from the base types. Grammars control
inter-object communication and state changes for the objects of the defined

USSA can be used just as a an object-oriented language building tool. Also,
it can be used in heavy-duty real time distributed applications in order to
describe and to control a variety of communicating objects (and has been used
this way already in the production environment). USSA description is available
by anonimous ftp from ''.

If you are interested in USSA, please contact me by email.

Thanks - Boris Burshteyn, Database and Language Development, Oracle.

>From Athena.MIT.EDU!reidmp Thu Aug 12 15:11:33 1993

I've run into some languages defined and also sometimes implemented in terms
of denotational semantics, but not operational semantics... but from what
I've read, I'd gotten the impression that the latter is more common than
the former. If denotational-semantic pointers would help you out, let me
know and I'll try and dig some up for you.

    Reid M. Pinchback
    Faculty Liaison
    Academic Computing Services, MIT

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.