8,250 research outputs found
Modal logics for reasoning about object-based component composition
Component-oriented development of software supports the adaptability and maintainability of large systems, in particular if requirements change over time and parts of a system have to be modified or replaced. The software architecture in such systems can be described by components
and their composition. In order to describe larger architectures, the composition concept becomes crucial. We will present a formal framework for component composition for object-based software development. The deployment of modal logics for defining components and component composition will allow us to reason about and prove properties of components and compositions
A definition of the ARCA notation
ARCA is a programming notation intended for interactive specification and manipulation of combinatorial graphs. The main body of this report is a technical description of ARCA sufficiently detailed to allow an interpreter to be developed. Some simple illustrative programs are included.
ARCA incorporates variables for denoting primitive data elements (essentially vertices, edges and scalars), and diagrams (essentially embedded graphs). A novel feature is the use of two kinds of variable: the one storing values (as in conventional procedural languages), the other functional definitions (as in nonprocedural languages). By means of such variables, algebraic expressions over the algebra of primitive data elements may represent either explicit values or formulae. The potential applications and limitations of ARCA, and more general "algebraic notations" defined using similar principles, are briefly discussed
Recommended from our members
Introducing new constructs for data modelling and column generation in LP modelling languages
Through popular implementation of structured query language (SQL) and query-by-example(QBE) relational databases have become the de-facto industry standard for data modelling.We consider the indices, sets, and the declarative form of Linear Programming (LP) modelling languages and introduce new constructs which provide direct link to the database systems. The models constructed in this way are data driven and display a dynamicstructure. We then show how this approach can be naturally extended to include column generation features stated in procedural forms within an otherwise declarative modelling paradigm
Multi-cultural visualization : how functional programming can enrich visualization (and vice versa)
The past two decades have seen visualization flourish as a research field in its own right, with advances on the computational challenges of faster algorithms, new techniques for datasets too large for in-core processing, and advances in understanding the perceptual and cognitive processes recruited by visualization systems, and through this, how to improve the representation of data. However, progress within visualization has sometimes proceeded in parallel with that in other branches of computer science, and there is a danger that when novel solutions ossify into `accepted practice' the field can easily overlook significant advances elsewhere in the community. In this paper we describe recent advances in the design and implementation of pure functional programming languages that, significantly, contain important insights into questions raised by the recent NIH/NSF report on Visualization Challenges. We argue and demonstrate that modern functional languages combine high-level mathematically-based specifications of visualization techniques, concise implementation of algorithms through fine-grained composition, support for writing correct programs through strong type checking, and a different kind of modularity inherent in the abstractive power of these languages. And to cap it off, we have initial evidence that in some cases functional implementations are faster than their imperative counterparts
- …