Niteroi, 19 de Março de 20041 I Workshop do Projeto VAS Verificação de Arquiteturas de Software

Preview:

Citation preview

Niteroi, 19 de Março de 2004 1

I Workshop do Projeto VASI Workshop do Projeto VAS

Verificação de Arquiteturas de SoftwareVerificação de Arquiteturas de Software

Niteroi, 19 de Março de 2004 2

eMaudeeMaude

Um plugin Eclipse para a linguagem MaudeUm plugin Eclipse para a linguagem Maude

Matheus Mansur

Niteroi, 19 de Março de 2004 3

1.1. A Plataforma EclipseA Plataforma Eclipse

O que é.Como funciona.

– Pontos de Extensão (manifest.xml)– Framework de classes em Java para

implemetação

Niteroi, 19 de Março de 2004 4

1.1. A Plataforma EclipseA Plataforma Eclipse

Como nos pode ser útil.– Extension Point

• Editors*• Perspectives• Preference Pages• New Wizards

– Editors Extension Point• Add-ons

Niteroi, 19 de Março de 2004 5

Niteroi, 19 de Março de 2004 6

Niteroi, 19 de Março de 2004 7

Exemplos de Add-ons

Niteroi, 19 de Março de 2004 8

2.2. A Primeira AbordagemA Primeira Abordagem

Verificar como era estruturado os editores existentes– Modelo IDocument– Partições não sobrepostas– DocumentProvider

Niteroi, 19 de Março de 2004 9

2.2. A Primeira Abordagem A Primeira Abordagem

Niteroi, 19 de Março de 2004 10

2.2. A Primeira Abordagem A Primeira Abordagem

Partições não sobrepostas– Possibilidade de aplicar diferentes Add-ons a

cada uma delas.– Com isso posso utilizar um assistente de

conteúdo diferente para cada parte do código Maude.

– Ex.: Dentro de um módulo funcional não há necessidade de se exibir comandos do sistema.

Niteroi, 19 de Março de 2004 11

2.2. A Primeira Abordagem A Primeira Abordagem

A estrutura do syntax highlight– Definido a partir de um conjunto de regras

• Regras de Padrões.– EndOfLineRule("***", aToken);

– MultiLineRule(“[“,”]”,aToken);

• Regras de Palavras– WordRule(“begin”,aToken);

Niteroi, 19 de Março de 2004 12

Niteroi, 19 de Março de 2004 13

3.3. A Segunda Abordagem A Segunda Abordagem

Maude não possuir palavras reservadas. Como é muito comum em outras linguagens.

Isso permite falhas no syntax highlight.

Niteroi, 19 de Março de 2004 14

Niteroi, 19 de Março de 2004 15

3.3. A Segunda AbordagemA Segunda Abordagem

O modelo padrão do eclipse para a funcionalidade do syntax highlight não atende as necessidades do Maude.

Criar uma estrutura de árvore para armazenar a gramática BNF do Maude, e consultá-la para verificar se algo deve ser colorido ou não.

Com isso não analisaremos apenas a palavra, mas também o local da palavra.

Niteroi, 19 de Março de 2004 16

I Workshop do Projeto VASI Workshop do Projeto VAS

eMaudeeMaude

Um plugin Eclipse para a linguagem MaudeUm plugin Eclipse para a linguagem Maude

Matheus Mansur

www.ic.uff.br/~mmansur

mmansur@ic.uff.br