Christian Queinnec. Fast and compact dispatching for dynamic object-oriented languages. Information Processing Letters, 64(6):315-321, January 1998.
Dynamic Object-Oriented languages allows for dynamic definition of new classes, new generic functions and new methods. This paper proposes a single and compact data structure to, at the same time, facilitate the addition of new classes, generic functions or methods, and still ensure a fast method selection.
Luc Moreau and Christian Queinnec. Distributed computations driven by resource consumption. In ICCL 98 -- IEEE International Conference on Computer Languages, pages 68-77, Chicago (Illinois, USA), May 1998. IEEE.
Millions of computers are now connected together by the Internet. At a fast pace, applications are taking advantage of these new capabilities, and are becoming parallel and distributed, e.g. applets on the WWW or agent technology. As we live in a world with finite resources, an important challenge is to be able to control computations in such an environment. For instance, a user might like to suspend a computation because another one seems to be more promising. In this paper, we present a paradigm that allows the programmer to monitor and control computations, whether parallel or distributed, by mastering their resource consumption. We describe an implementation on top of the thread library PPCR and the message-passing library Nexus.
Christian Queinnec. DMeroon A Distributed Class-based Causally-Coherent Data Model - General documentation. LIP6, 1998. Rapport LIP6 1998/039 <http://www.lip6.fr/reports/lip6.1998.039.html>.
DMeroon provides a data model above a coherently distributed shared memory. DMeroon allows multiple users to statically or dynamically create new classes hierarchically organized, to dynamically instantiate these classes and, to dynamically and coherently share the resulting instances over a network. DMeroon automatically takes care of representation and alignment, marshaling and unmarshaling objects, migrating and sharing objects, local and global garbage collections. This document describes DMeroon , its philosophy of design, its architecture and principles of implementation, and its bindings with various languages. It also presents some applications above DMeroon .
Christian Queinnec. Marshaling/unmarshaling as a compilation/interpretation process. Research Report LIP6/1998/049, LIP6, December 1998.
Marshaling is the process through which structured values are serialized into a stream of bytes; unmarshaling converts this stream of bytes back to structured values. Most often, for a given data structure, the marshaler and the unmarshaler are tightly related pieces of code that are synthesized conjunctly. This paper proposes a new point of view: the unmarshaler is considered as a byte-code interpreter evaluating a stream of bytes considered as a program i.e., a sequence of commands interspersed with quoted raw data. This program is an expression of the marshaling language. From that point of view, the marshaler logically appears as a compiler translating values into expressions of the marshaling language.
© C. Queinnec fecit (2012-02-19)