• Aucun résultat trouvé

The Model OFL

N/A
N/A
Protected

Academic year: 2021

Partager "The Model OFL"

Copied!
2
0
0

Texte intégral

(1)

HAL Id: hal-01308798

https://hal.archives-ouvertes.fr/hal-01308798

Submitted on 28 Apr 2016

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-entific research documents, whether they are

pub-lished or not. The documents may come from

teaching and research institutions in France or

abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est

destinée au dépôt et à la diffusion de documents

scientifiques de niveau recherche, publiés ou non,

émanant des établissements d’enseignement et de

recherche français ou étrangers, des laboratoires

publics ou privés.

The Model OFL

Pierre Crescenzo

To cite this version:

Pierre Crescenzo. The Model OFL. 12th Workshop for Ph.D. Students in Object-Oriented Systems

lors de la conférence ECOOP 2002 (16th European Conference on Object-Oriented Programming),

Jun 2002, Malaga, Spain. �hal-01308798�

(2)

THE

MODEL

OFL

Pierre Crescenzo

Address: Laboratoire I3S (UNSA/CNRS)

Projet OCL

2000, route des lucioles

Les Algorithmes, Bâtiment Euclide B BP 121

F-06903 Sophia-Antipolis CEDEX (France)

E-Mail: Pierre.Crescenzo@unice.fr

Web: http://www.crescenzo.nom.fr/

Keywords: Customised Relationships, Meta-Programming, Hyper-Generic Parameters

The model OFL (Open Flexible Languages) [Cre01] aims to describe the main object-oriented programming languages (such asJava [GJSB00],C++[Str97],Eiffel [Mey92], . . . ) to allow their evolution and their adaptation to specific programmer’s needs. To reach this goal,OFL reifies all elements of an object-oriented programming language in a set of com-ponents. Thus classes, methods, expressions, messages, and so on are theOFL-components and are integrated in a specific MOP (Meta-Object Protocol) which allows to extend the set of entities needed for the reification of both languages and user applications.

The meta-programmer creates a language by selecting adequateOFL-components in pre-defined libraries. (S)he can also specialise a given OFL-components in order to generate one dedicated to some specific uses. To separate the defaultOFL-components of theOFL -components created for a specific language, we callOFL-Atom the default one.1

Classes are reified byOFL-components. Take the example ofJava. We have Component-JavaClass, ComponentJavaInterface, ComponentJavaArray, . . . An originality ofOFLis that relationships are also reified. So, we have forJava: ComponentJavaExtendsBetween-Classes, ComponentJavaExtendsBetweenInterfaces, ComponentJavaImplements, . . . A more complete list ofOFL-components forJava is given in [CCL02].

To facilitate the creation of an OFL-component,OFL provides some meta-components, called OFL-concepts. So, we have a ConceptRelationship and a ConceptDescription2. Thus, ConceptDescription is equivalent to a meta-meta-class. In each concept, a set of parameters gives the meta-programmer powerful possibilities to create or adapt an OFL -component.

References

[CCL02] A. Capouillez, P. Crescenzo, and P. Lahire. Le modèle OFL au service du méta-programmeur - Application à Java. In LMO’2002 (Langages et Modèles à Objets). Hermes Science Publica-tions, L’objet : logiciels, bases de données, réseaux, volume 8, numéro 1-2/2002, January 2002. also Research Report I3S/RR–2001-04–FR (Laboratoire d’Informatique, Signaux et Systèmes de Sophia-Antipolis),http://www.crescenzo.nom.fr/.

[Cre01] P. Crescenzo. OFL : un modèle pour paramétrer la sémantique opérationnelle des langages

à objets - Application aux relations inter-classes. PhD. Thesis, Université de Nice-Sophia Antipolis, December 2001. http://www.crescenzo.nom.fr/.

[GJSB00] J. Gosling, B. Joy, G. Steele, and G. Bracha. The Java Language Specification. The Sun Microsystems Press Java Series. Sun Microsystems, June 2000. http://java.sun.com/ docs/books/jls/.

[Mey92] B. Meyer. Eiffel: The Language. Object-Oriented Series. Prentice Hall, 1992. http://www. eiffel.com/doc/.

[Str97] B. Stroustrup. The C++ Programming Language. Addison-Wesley Publishing Co., 3rd

edition, 1997.http://www.research.att.com/~bs/3rd.html.

1In other words,OFL-Atoms are supplied by the model, otherOFL-components, created for a specific language,

are not.

2The word description has been chosen to represent classes and all entities which look like classes, such as

inter-faces.

Références

Documents relatifs

To have an uniform and transparent mechanism to store values of a field, our different structures that keep states of this field for linear, backtracking and branching

These shared principles include (1) lightweight reasoning is embedded into the robot control languages; (2) the architectures invite programmers to specify models of the robot and

While the first tendency leads to a severe limitation of programmers’ possibilities and to a uniformization of “personal” softwares restricted to “macro-softwares”, the needs of

how aspect-oriented modeling can be used to extend existing meta-data languages with action specifications and presents the metamodel of KerMeta (our experimental language)..

Then, based on the relation between the clone instances, further refactoring techniques can be used to refactor the extracted methods (for in- stance “pull up method” for clones

Our experience is based on the development and use of three different imperative object-oriented languages for model manipulation, respectively: MTL a

{ dans l'industrie, les methodes de parallelisation se sont traditionnellement concen- trees sur les nids de boucles et sur les tableaux, avec des degres importants de

3.2 A single dose of nicotine increases open arm time in Ca~ 1.2DI-IP-I- mice. indicating u.. 3.3 Repeated nicotine Irealments caused anxiol) tic efrects in WT but nOI Ca~