Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouRicardo Martos Alterado mais de 9 anos atrás
1
Paradigmas de Linguagens de Programação BNF e Interpretador da Linguagem Imperativa 1
Augusto Sampaio e Paulo Borba Centro de Informática Universidade Federal de Pernambuco
2
Visão Geral Estende a linguagem de expressões 1 com variáveis
comando de atribuição comandos de entrada e saída controle de fluxo
3
Visão Geral Comandos versus Expressões Efeitos colaterais
Pascal e Java Linguagens funcionais Efeitos colaterais Um programa é um comando
4
BNF
5
Programa Exemplo 1 { var a = 3; write(a); { var a = 2, var b = 5;
write(b+a) }; write(a) } =
6
= valores de entrada diferentes
Programa Exemplo 2 {var n = 0, var m = 0; read(n); read(m); if (m == n) then write("valores de entrada iguais") else write("valores de entrada diferentes") } = valores de entrada diferentes = 2 3
7
= Hello World Hello World Hello World
Programa Exemplo 3 { var i = 0; while not (i == 3) do i := i + 1; write("Hello World") } = Hello World Hello World Hello World
8
Ambiente do Interpretador
O ambiente inclui três componentes: uma pilha de mapeamentos de identificadores em valores (memória principal) lista de valores de entrada (teclado, socket, etc.) lista de valores de saída (monitor, impressora, etc.)
9
Ambiente do Interpretador
O ambiente pode ser modificado por atribuições e por declarações de variáveis!
10
Projeto e Implementação do Interpretador
A execução de comandos retorna um ambiente derivado do que é recebido como argumento Modelo de projeto Partes do código
11
Exercícios Estenda a Linguagem Imperativa 1 com os seguintes recursos:
declaração de variável sem inicialização comando switch de Java comando for de Java blocos, iniciados por “{“ e terminados por “}”, sem obrigar a declaração de variáveis
12
Exercícios Estenda a Linguagem Imperativa 1 com os seguintes recursos:
comando “break” de Java (interrompe e finaliza a execução de um “while”) comando “continue” de Java (interrompe e reinicia a execução de um “while”) Por simplicidade, inicialmente considere que não há declarações de variáveis locais
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.