Programming
Languages
It is essential for programming languages to have sound theoretical
basis. Our recent work in this area includes the following:
- Formal models of computation for concurrent
computational systems and languages such as Actors, ABCM and
HACL.
- Design and Implementation of Concurrent Objects
- Higher Order Linear Logic Programming Language: HACL
- Meta architectures and reflective
computation models formulated from the object-oriented concurrent
computation model, implemented in a reflective language ABCL/R,
ABCL/R2, and ACT/R. Reflective computation is a process of reasoning
about and acting upon the computational system itself. Its purpose is
to provide sound foundations for evolution of concurrent open systems.
- Identification of safe inheritance for concurrent object-systems.
In general, many of the previous proposals for resolving the conflicts
between inheritance and synchronization constraints are insufficient
in the sense that one CANNOT avoid anomaly in inheritance where
re-definitions of all relevant parent methods are necessary.
Other research topics in this area include theory of type systems,
algebra of concurrent systems, and parallel
constraint (object-oriented and logic) programming.
The efficient implementation of our developed languages is also
an important area for research. We focus on target architectures
which allow for at least 1000 processing nodes. Several of our
languages have been implemented on such machines.
|m 95.02.15