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 CRACS

2003

On deterministic computations in the extended Andorra model

Autores
Lopes, R; Costa, VS; Silva, F;

Publicação
LOGIC PROGRAMMING, PROCEEDINGS

Abstract
Logic programming is based on the idea that computation is controlled inference. The Extended Andorra Model provides a very powerful framework that supports both co-routining and parallelism. In this work we show that David H. D. Warren's design for the EAM with Implicit Control does not perform well for deterministic computations and we present several optimisations that allow the BEAM to achieve performance matching or even exceeding related systems. Our optimisations refine the original EAM control rule demonstrate that overheads can be reduced through combined execution rules, and show that a good design and emulator implementation is relevant, even for a complex system such as the BEAM.

2003

Efficient data structures for inductive logic programming

Autores
Fonseca, N; Rocha, R; Camacho, R; Silva, F;

Publicação
INDUCTIVE LOGIC PROGRAMMING, PROCEEDINGS

Abstract
This work aims at improving the scalability of memory usage in Inductive Logic Programming systems. In this context, we propose two efficient data structures: the Trie, used to represent lists and clauses; and the RL-Tree, a novel data structure used to represent the clauses coverage. We evaluate their performance in the April system using well known datasets. Initial results show a substantial reduction in memory usage without incurring extra execution time overheads. Our proposal is applicable in any ILP system.

2003

Mooshak: a Web-based multi-site programming contest system

Autores
Leal, JP; Silva, F;

Publicação
SOFTWARE-PRACTICE & EXPERIENCE

Abstract
This paper presents a new Web-based system, Mooshak, to handle programming contests. The system acts as a full contest manager as well as an automatic judge for programming contests. Mooshak innovates in a number of aspects: it has a scalable architecture that can be used from small single server contests to complex multi-site contests with simultaneous public online contests and redundancy; it has a robust data management system favoring simple procedures for storing, replicating, backing up data and failure recovery using persistent objects; it has automatic judging capabilities to assist human judges in the evaluation of programs; it has built-in safety measures to prevent users from interfering with the normal progress of contests. Mooshak is an open system implemented on the Linux operating system using the Apache HTTP server and the TcI scripting language. This paper starts by describing the main features of the system and its architecture with reference to the automated judging, data management based on the replication of persistent objects over a network. Finally, we describe our experience using this system for managing two official programming contests. Copyright (C) 2003 John Wiley Sons, Ltd.

2003

A CLP-based tool for computer aided generation and solving of maths exercises

Autores
Tomas, AP; Leal, JP;

Publicação
PRACTICAL ASPECTS OF DECLARATIVE LANGUAGES, PROCEEDINGS

Abstract
We propose an interesting application of Constraint Logic Programming to automatic generation and explanation of mathematics exercises. A particular topic in mathematics is considered to investigate and illustrate the advantages of using the CLP paradigm. The goal is to develop software components that make the formulation and explanation of exercise's easier. We describe exercises by grammars which enables us to get specialized forms almost for free, by imposing further conditions through constraints. To define the grammars we concentrate on the solving procedures that are taught instead of trying to abstract an exercise template from a sample of similar exercises. Prototype programs indicate that Constraint Logic Programming frameworks may be adequate to implement such a tool. These languages have the right expressiveness to encode control on the system in an elegant and declarative way.

2003

Lexically scoped distribution: What you see is what you get

Autores
Ravara, A; Matos, AG; Vasconcelos, VT; Lopes, L;

Publicação
Electronic Notes in Theoretical Computer Science

Abstract
We define a lexically scoped, asynchronous and distributed p-calculus, with local communication and process migration. This calculus adopts the network-awareness principle for distributed programming and follows a simple model of distribution for mobile calculi: a lexical scope discipline combines static scoping with dynamic linking, associating channels to a fixed site throughout computation. This discipline provides for both remote invocation and process migration. A simple type system is a straightforward extension of that of the p-calculus, adapted to take into account the lexical scope of channels. An equivalence law captures the essence of this model: a process behavior depends on the channels it uses, not on where it runs. This work was partially supported by the Portuguese Fundação para a Ciencia e a Tecnologia (via CLC, the project MIMO, POSI/CHS/39789/2001, and scholarships POCTI/SFRH/BPD/6782/2001 and POSI/SFRH/BD/7100/20- 01), by the EU FEDER (via CLC) and the EU IST proactive initiative FET- Global Computing (projects Mikado, IST-2001-32222, and Profundis, IST- 2001-33100). We thank Gérard Boudol, Ilaria Castellani, Matthew Hennessy and Francisco Martins, as well as the anonymous referees, for their comments. © 2003 Published by Elsevier Science B.V.

2003

The impact of linearity information on the performance of TyCO

Autores
Martins, F; Lopes, L; Vasconcelos, VT;

Publicação
Electronic Notes in Theoretical Computer Science

Abstract
We describe a linear channel inference system for the TyCO programming language, where channel usage is tracked through method invocations as well as definition instantiations. We then apply linear channel information to optimize code generation for a multithreaded runtime system. The impact in terms of speed and space is analyzed. © 2003 Published by Elsevier Science B.V.

  • 177
  • 192