Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouLiliana Angelim Álvaro Alterado mais de 8 anos atrás
1
SWNE Uma Linguagem Baseada em Predicados Alex Abate Biral Número USP 3462641 Orientador: Marco Dimas Gubitoso
2
Despacho Linguagens Orientadas a Objeto introduziram o Despacho Dinâmico sobre classe. Generalizações: Despacho Múltiplo, Classes Predicativas, Despacho por Padrões. Caso mais genérico: Despacho por Predicados.
3
Predicados Predicados dinâmicos são definidos por uma simples função booleana. Predicados estáticos são conjuntos de objetos. Predicados estáticos podem definir a estrutura de seus membros. Um predicado pode implicar em outros, ou ser mutualmente exclusivo. Isto cria uma ordenação parcial.
4
Objetos Todos os substantivos do sistema são objetos. Objetos “imutáveis” são valores, e podem ser representados de diversas maneiras. Objetos mutáveis são entidades, e possuem uma identidade constante.
5
Variáveis Quando uma variável é declarada, podemos limitála a uma lista de predicados. Isso permite que o compilador procure por erros de lógica em tempo de compilação. Também pode funcionar como asserts em tempo de execução (mas é lento). Como usamos clausuras, os predicados também podem representar assinaturas.
6
Dinâmica de Despacho Ordenamos os predicados de maneira a criar uma ordem total. A partir desta ordenação, ordenamos todas as assinaturas de uma função. A ordenação garante que uma assinatura mais específica é checada primeiro. Fora a isso, o sistema usa a ordem inversa de declaração.
7
Conclusões É possível montar uma linguagem onde o despacho por predicados é a mecânica principal. Não é necessáriamente bom reduzir uma mecânica a sua forma mais genérica, mas pode ser útil para criar um sistema mais expressivo. É possível melhorar o sistema de despacho, mas é necessário desenvolver bem o algoritmo.
8
Trabalhos Futuros Usar predicados para visualisar versões das funções. Desenvolver um sistema lógico similar a prolog para trabalhar com os algoritmos. Tornar a linguagem auto-referencial, permitindo que predicados e variáveis usem também o despacho por predicados.
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.