treselogo.gif (513 bytes) 

My work at Oce Research

1981-1986.gif (5134 bytes)

Image coding: At Oce Research in Venlo the Netherlands, I established a research group, which developed image coding algorithms and dedicated hardware to be used in electronic copiers.

Defense Research Department: During my compulsory military service I reported on the NATO research projects on distributed command control systems, target acquisition and surveillance.

Distributed systems: After my return to Oce in October 1993, I started a research group on distributed office systems. I was inspired by Smalltalk, Actor languages, CLU and ARGUS, and distributed processing techniques, such as RPCs and transactions. Further, I worked on knowledge representation techniques such as semantic networks. At that time, new UI paradigms and workstations were just emerging.

The Sina-0/1 language: After analyzing the requirements of office systems, I realized that the object model as implemented by Smalltalk was not expressive enough to model and compose office systems. In particular, I was interested in dynamic objects, concurrent processing and meta architectures.

My idea was to use semantic networks to express the relationships between object's basic bahavior and various complex concerns. The received and sent messages to (or from) objects could travel over the networks before a method is executed. This is similar to Aspect-Oriented Programming (AOP). (Note that at time time, the term AOP was not known. The term AOP was introduced by [Kiczales 96]).

I was inspired by the separation of concern principle, Scripts [Francez 86]), and I read some notes written by Patty Maes when she was studying for her Ph.D. degree in Brussels. .

Sina-0/1 could express some sort of delegation. Further, it supported contracts based on message reflection. However, the term delegation, reflection and contracts were not known at that time. Note that delegation was introduced in [Liebermann 86], reflective object-oriented programming in [Maes 87]) and contracts in [Helm 90].

I cooperated with Anand Tripathi from the University of Minnesota. Erwin van den Linden from Oce implemented the first Sina-0/1 parser. My work at that time was published as internal Oce reports.  it was not the interest of the company to make open publications. The project was suspended in 1996 because of my involvement in the ESPRIT project TODOS.

The Sina language at that time was quite complex and because of the multiplicity of the techniques used (semantic networks, objects, meta layers, etc.), it was not easily understandable by most programmers.

ESPRIT Project TODOS: From 1986 to begin 1987 I was the leader of the workpackage "architecture design" of the the TODOS project (Automated Tools for Designing Office Information Systems). 

References

[Francez 86]

N. Francez et al, Script: A Communication Abstraction Mechanism and Its Verification, Science of Computer Programming, 6, 1, pp. 35-88, 1986.

[Helm 90]

R. Helm, I. Holland and D. Ganghopadhyay, Contracts: Specifying Behavioral Compositions in Object-Oriented Systems, OOPSLA '90, pp. 169-180, 1990.

[Kiczales 96] G. Kiczales et al. Aspect-Oriented Programming, in Special Issues in Object-Oriented Programming, Max Muehlhaeuser (general editor) et al. dpunkt Heidelberg, 1997.
[Liebermann 86]

H. Lieberman, Using Prototypical Objects to Implement Shared Behavior, OOPSLA '86, pp. 214-223, 1986.

[Maes 97]

P. Maes, Concepts and Experiments in Computational Reflection, OOPSLA '87, pp. 147-155, October 1987.

This page was last modified by Mehmet Aksit on November 3, 2000.