Cookies
O website necessita de alguns cookies e outros recursos semelhantes para funcionar. Caso o permita, o INESC TEC irá utilizar cookies para recolher dados sobre as suas visitas, contribuindo, assim, para estatísticas agregadas que permitem melhorar o nosso serviço. Ver mais
Aceitar Rejeitar
  • Menu
Publicações

Publicações por HASLab

2008

Token-passing Nets for Functional Languages

Autores
Almeida, JB; Pinto, JS; Vilaça, M;

Publicação
Electr. Notes Theor. Comput. Sci.

Abstract
Token-passing nets were proposed by Sinot as a simple mechanism for encoding evaluation strategies for the ?-calculus in interaction nets. This work extends token-passing nets to cover a typed functional language equipped with structured types and unrestricted recursion. The resulting interaction system is derived systematically from the chosen big-step operational semantics. Along the way, we actually characterize and discuss several design decisions of token-passing nets and extend them in order to achieve simpler interaction net systems with a higher degree of embedded parallelism.

2008

A Tool for Programming with Interaction Nets

Autores
Almeida, JB; Pinto, JS; Vilaca, M;

Publicação
Electronic Notes in Theoretical Computer Science

Abstract
This paper introduces INblobs, a visual tool developed at Minho for integrated development with Interaction Nets. Most of the existing tools take as input interaction nets and interaction rules represented in a textual format. INblobs is first of all a visual editor that allows users to edit interaction systems (both interaction nets and interaction rules) graphically, and to convert them to textual notation. This can then be used as input to other tools that implement reduction of nets. INblobs also allows the user to reduce nets within the tool, and includes a mechanism that automatically selects the next active pair to be reduced, following one of the given reduction strategies. The paper also describes other features of the tool, such as the creation of rules from pre-defined templates.

2008

Interval Tree Clocks A Logical Clock for Dynamic Systems

Autores
Almeida, PS; Baquero, C; Fonte, V;

Publicação
PRINCIPLES OF DISTRIBUTED SYSTEMS, 12TH INTERNATIONAL CONFERENCE, OPODIS 2008

Abstract
Causality tracking mechanisms, such as vector clocks and version vectors, rely on mappings from globally unique identifiers to integer counters. In a system with a well known set of entities these ids can be preconfigured and given distinct positions in a vector or distinct names in a mapping. Id management is more problematic in dynamic systems, with large and highly variable number of entities, being worsened when network partitions occur. Present solutions for causality tracking are not appropriate to these increasingly common scenarios. In this paper we introduce Interval Tree Clocks, a novel causality tracking mechanism that can be used in scenarios with a dynamic number of entities, allowing a completely decentralized creation of processes/replicas without need for global identifiers or global coordination. The mechanism has a variable size representation that adapts automatically to the number of existing entities, growing or shrinking appropriately. The representation is so compact that the mechanism can even be considered for scenarios with a fixed number of entities, which makes it a general substitute for vector clocks and version vectors.

2008

The Objects and Arrows of Computational Design

Autores
Batory, D; Azanza, M; Saraiva, J;

Publicação
MODEL DRIVEN ENGINEERING LANGUAGES AND SYSTEMS, PROCEEDINGS

Abstract
Computational Design (CD) is a paradigm where both program design and program synthesis are computations. CD merges Model Driven Engineering (MDE) which synthesizes programs by transforming models, with Software Product Lines (SPL) where programs are synthesized by composing trans format ions called features. In this paper, basic relationships between MDE and SPL are explored using the language of modern mathematics.

2008

Disentangling Denotational Semantics Definitions

Autores
Tirelo, F; Bigonha, RS; Saraiva, J;

Publicação
JOURNAL OF UNIVERSAL COMPUTER SCIENCE

Abstract
Denotational semantics is a powerful technique to formally de. ne programming languages. However, language constructs are not always orthogonal, so many semantic equations in a definition may have to be aware of unrelated constructs semantics. Current approaches for modularity in this formalism do not address this problem, providing, for this reason, tangled semantic definitions. This paper proposes an incremental approach for denotational semantic specifications, in which each step can either add new features or adapt existing equations, by means of a formal language based on function transformation and aspect weaving.

2008

Generative and Transformational Techniques in Software Engineering II, International Summer School, GTTSE 2007, Braga, Portugal, July 2-7, 2007. Revised Papers

Autores
Lämmel, R; Visser, J; Saraiva, J;

Publicação
GTTSE

Abstract

  • 221
  • 261