14 MAIO / TERÇA FEIRA / 08:10
FCUP PT 
 EN
 
 
APRESENTAÇÃO
PESSOAS
ENSINO
INVESTIGAÇÃO
BIBLIOTECA
NOTÍCIAS
CONTACTOS

Graphical Interaction in Logic Programming

José Paulo Leal

Departamento de Ciência de Computadores & LIACC
Faculdade de Ciências, Universidade do Porto
Rua do Campo Alegre, 823 4150 Porto, Portugal

November 1997


Abstract

This thesis presents a new interaction framework specifically designed for interacting with structured data in Logic Programming (LP). The proposed interaction model is the basis for an interaction engine whose functionalities where tested in Magritte, an environment for the development of logic programs.

Interaction in Magritte is based on a term editing model. This model provides a term oriented interface definition that introduces a novel approach to the definition of interaction in LP. As a consequence, in Magritte interaction is regarded as a particular case of editing a set of terms. In this approach the definition of the interface semantics uses terms and the interface syntax associates graphical visualization rules to functors. This view of interaction simplifies the definition of interaction in such complex tasks as specialized structure editing and interaction with the execution of logic programs.

Magritte uses in its front-end concepts that have proven their usefulness in other contexts but that were never implemented in LP environments. From spreadsheets Magritte borrows the idea of integrating data, programs and executions in a single workspace, and from structure editing it borrows the idea of guided input. The contribution of this research was the adaptation of these ideas to LP. Hence, in Magritte's view of spreadsheets the matrix model was replaced by a tree model, and the structure edition does not use a context free grammar but is based on the concept of types of terms.

The interaction framework proposes a language for the graphical syntax of terms. This language associates to a class of functors a set of rules that compute several visual attributes of the terms. Both the language and the evaluation algorithms are based on attribute grammar concepts, and were adapted to the requirements of a LP environment.


FCUP 2024