Loading [MathJax]/extensions/MathZoom.js
Coalgebras have been proposed as formal basis for the semantics of objects in the sense of object-oriented programming. This paper shows that this semantics provides a smooth interpretation for subtyping, a central notion in object-oriented programming. We show that different characterisations of behavioural subtyping found in the literature can conveniently be expressed in coalgebraic terms. We also investigate the subtle difference between behavioural subtyping and refinement.
Coalgebras have been proposed as formal basis for the semantics of
objects in the sense of object-oriented programming.
This paper shows that this semantics provides a smooth
interpretation for subtyping,
a central notion in object-oriented programming.
We show that different characterisations of
behavioural subtyping
found in the literature can conveniently be expressed in coalgebraic terms.
We also investigate the subtle difference between
behavioural subtyping and refinement.
A new method for applying grammar based Genetic Programming to learn fuzzy rule based classifiers from examples is proposed. It will produce linguistically understandable, rule based definitions in which not all features are sent in the antecedents. A feature selection is implicit in the algorithm. Since both surface and deep structure will be learned, standard grammar based GP is not applicable to this problem. We have adapted GA-P algorithms, a method formerly defined as an hybrid between GA and...
This article presents the guiding principles of the architecture of Trio_U, a new generation of software for thermohydraulic calculations. Trio_U is designed to serve as a thermohydraulic development platform. Its basic conception is object-oriented and it is written in C++. The article demonstrates how this type of design enables an open, modular software architecture.
This article presents the guiding principles of the architecture of Trio_U, a new generation of software for thermohydraulic calculations. Trio_U is designed to serve as a thermohydraulic development platform. Its basic conception is object-oriented and it is written in C++. The article demonstrates how this type of design enables an open, modular software architecture.
Coalgebras for endofunctors can be used to model classes of object-oriented languages. However, binary methods do not fit directly into this approach. This paper proposes an extension of the coalgebraic framework, namely the use of extended polynomial functors . This extension allows the incorporation of binary methods into coalgebraic class specifications. The paper also discusses how to define bisimulation and invariants for coalgebras of extended polynomial functors and proves many standard...
Coalgebras for endofunctors can be used to model classes of object-oriented
languages. However, binary methods do not fit directly into
this approach. This paper proposes an extension of the
coalgebraic framework, namely the use of extended
polynomial functors. This extension allows the incorporation
of binary methods into coalgebraic class specifications. The
paper also discusses how to define bisimulation and invariants
for coalgebras
of extended polynomial functors and proves many...
Object oriented design has proven itself as a powerful tool in the field of scientific computing. Several software packages, libraries and toolkits exist, in particular in the FEM arena that follow this design methodology providing extensible, reusable, and flexible software while staying competitive to traditionally designed point tools in terms of efficiency. However, the common approach to identify classes is to turn data structures and algorithms of traditional implementations into classes such...
Object oriented design has proven itself as a powerful tool in
the field of scientific computing. Several software packages,
libraries and toolkits exist, in particular in the FEM arena
that follow this design methodology providing extensible, reusable,
and flexible software while staying competitive to traditionally
designed point tools in terms of efficiency. However, the common approach to identify classes is to turn data structures and algorithms of traditional implementations into
...
The C++// language (pronounced C++ parallel) was designed and implemented with the aim of importing reusability into parallel and concurrent programming, in the framework of a mimd model. From a reduced set of rather simple primitives, comprehensive and versatile libraries are defined. In the absence of any syntactical extension, the C++// user writes standard C++ code. The libraries are themselves extensible by the final users, making C++// an open system. Two specific techniques to improve performances...
The C++// language (pronounced C++parallel)
was designed and implemented with the aim of importing
reusability into parallel and concurrent
programming, in the framework of a mimd model.
From a reduced set of rather simple primitives,
comprehensive and versatile libraries are defined.
In the absence of any syntactical extension,
the C++// user
writes standard C++ code.
The libraries are themselves
extensible by the final users, making C++// an open system. Two specific techniques to improve performances...
Mainstream object-oriented
languages often fail to provide complete powerful features
altogether, such as, multiple inheritance, dynamic overloading and
copy semantics of inheritance. In this paper we present a core
object-oriented imperative language that integrates all these
features in a formal framework. We define a static type system and a
translation of the language into the meta-language λ_object,, in order
to account for semantic issues and prove type safety of our
proposal.
The process of modelling and developing commonality and variability for system families should be supported by suitable methods and notations. The object-oriented methods and their notations, which are used at present, focus on the development of a single system at a time. In this paper we analyse feature models as a representation of the common parts and variants contained in a system family, and propose using a feature diagram as a basic representation of commonality, variability and dependencies....
Development of user-friendly and flexible scientific programs is a key to their usage, extension and maintenance. This paper presents an OOP (Object-Oriented Programming) approach for design of finite element analysis programs. General organization of the developed software system, called FER/SubDomain, is given which includes the solver and the pre/post processors with a friendly GUI (Graphical User Interfaces). A case study with graphical representations illustrates some functionalities of the...
Development of user-friendly and flexible scientific programs is a key to their usage, extension and maintenance. This paper presents an OOP (Object-Oriented Programming) approach for design of finite element analysis programs. General organization of the developed software system, called FER/SubDomain, is given which includes the solver and the pre/post processors with a friendly GUI (Graphical User Interfaces). A case study with graphical representations illustrates some functionalities of the...
In the context of object-oriented systems, algorithms for building class
hierarchies are currently receiving much attention.
We present here a characterization of several global
algorithms.
A global algorithm is one which starts with
only the set of classes (provided with all their properties) and directly builds
the hierarchy.
The algorithms scrutinized were developped each in a different framework.
In this survey, they are explained in a single framework, which takes
advantage of a substructure...
In recent work we have proposed a novel approach to define idealized type systems for object-oriented languages, based on abstract compilation of programs into Horn formulas which are interpreted w.r.t. the coinductive (that is, the greatest) Herbrand model. In this paper we investigate how this approach can be applied also in the presence of imperative features. This is made possible by considering a natural translation of Static Single Assignment intermediate form programs into Horn formulas,...
Currently displaying 1 –
20 of
38