Augusto Sampaio e Paulo Borba Centro de Informática

Slides:



Advertisements
Apresentações semelhantes
Um programa em C Bibliotecas Variáveis globais
Advertisements

Universidade Federal de São Carlos Introdução à Linguagem C Comandos.
Algoritmos e Programação Linguagens de Programação Teoria Aula 7 (19/05) Universidade Federal do Vale do São.
Universidade Federal do Pará Serviço Público Federal Centro de Ciências Exatas e Naturais Departamento de Informática Abril/2001.
Prof. Heloise Manica Paris Teixeira
Programação Lógica: PROLOG
Linguagem C Estruturas de Controle de Fluxos
Construção de Compiladores
Introdução à Programação
Paradigmas da Programação
LINGUAGEM C Centro Federal de Educação Tecnológica da Paraíba Coordenação de Informática Professor: Lafayette B. Melo.
Apresentação da linguagem Python
Linguagem C Estruturas de Seleção.
Revisão da Linguagem C.
DESENVOLVIMENTO DE COMÉRCIO ELETRÔNICO
Tópicos Tipos de Dados Variáveis por Valor Variáveis por Referência
Implementar Listas em Linguagem Funcional II
Introdução a Computação e Cálculo Numérico
Análise léxica e sintática
Professor: Juliano Lucas Gonçalves
FTIN Formação Técnica em Informática
Linguagens Imperativas
Estudo dos Conceitos e Paradigmas de Programação
Paradigmas de Linguagens de Programação Linguagem Imperativa 2
Paradigmas de Linguagens de Programação BNF e Interpretador da Linguagem Orientada a Objetos Augusto Sampaio Jackson, Jean, Patrícia, Saulo Centro de Informática.
Semântica de Linguagens de Programação
Paradigmas de Linguagens de Programação Linguagem Imperativa 1
Paradigma Funcional Apresentação de LF1.
Paradigmas de Linguagens de Programação Linguagem Orientada a Objetos 1 Augusto Sampaio e Paulo Borba Departamento de Informática Universidade Federal.
Linguagem de Expressões 2
Centro de Informática – UFPE
Augusto Sampaio e Paulo Borba Centro de Informática
Análise léxica e sintática
Modelos de Paradigmas de programação
Augusto Sampaio e Paulo Borba Gustavo Pinto Marcelo Queiroz
23/08/2004 Centro de Informática - UFPE Projeto 2 de PLP Equipe: Daniel Leitão (dal) Dante Torres (dgt) Pablo Sampaio (pas) Linguagem Imperativa 2 com.
1 Introdução a C# Sharp Shooters.NET Universidade Federal de Pernambuco Centro de Informática Recife, 15/08/2002 Autor: Marden Menezes Costa.
PrograMação para internet
Linguagem de Programação JAVA
Capítulo III Modularização Procedimentos e Funções Universidade Federal de São Carlos Departamento de Computação Aluna: Luanna Lopes Lobato
Paradigma funcional.
PROGRAMAÇÃO ou LINGUAGEM C?
Algoritmos e Estrutura de Dados I Jean Carlo Mendes
Programação I CH: 60h Créditos: 3 Prof Me. Tiago Araujo.
Aula 1 – Profª Danielle Costa
Linguagens de Programação II
Caio Neves Leila Soriano
Multiprocessamento Sérgio Cavalcante CIn GRECO - CIn / UFPE.
PCS - Departamento de Engenharia de Computação e Sistemas Digitais Projeto de Formatura – Turmas 2010 Integrantes: Professor Orientador: Co-orientador:
Aula Prática 2 Monitoria IP/CC (~if669).
Aula Prática 3 Funções Monitoria Introdução à Programação.
Recursividade Profs. De Prog2 e Lab2.
Semântica de Linguagens de Programação
1 Programação Multi-Paradigma Cristiano Bertolini – Ellison Siqueira – Guilherme Avelino –
Comandos Não-Determinísticos e Atribuição Simultânea PLP – Projeto 2 Julho/2003 Prof. Augusto Sampaio Cibele da Rosa Christ [crc2] Gleifer Vaz Alves [gva]
Engenharia de Software com o RUP - Workflow de Testes Parte II Alexandre Vasconcelos, André Santos, Augusto Sampaio, Hermano Moura, Paulo Borba © Centro.
Paradigmas de Linguagens de Programação Conceitos da Linguagem Imperativa 1 Augusto Sampaio e Paulo Borba Centro de Informática Universidade Federal de.
Fundamentos de Programação
Profa. Maria Augusta Constante Puget
Paradigmas de Linguagens de Programação BNF e Interpretador da Linguagem Orientada a Objetos Augusto Sampaio e Paulo Borba Gustavo Pinto Marcelo Queiroz.
11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)
Faculdade Pernambuca - FAPE Compiladores Abril/2007 Compiladores Abril/2007.
Visual C# (parte 2) Prof. Igor Conrado Alves de Lima – Operadores, estruturas de decisão, vetores (arrays), e estruturas de.
ALGORITMOS Profº Antonio Carlos Marcelino de Paula 1.
Paradigmas de Linguagens de Programação BNF e Interpretador da Linguagem Orientada a Objetos Augusto Sampaio e Paulo Borba Gustavo Pinto Marcelo Queiroz.
Análise Contextual Mauro Araújo Teoria e Implementação de Linguagens Computacionais - IF688 Centro de Informática – CIn Universidade Federal de Pernambuco.
1 Programação Multi-Paradigma Cristiano Bertolini – Ellison Siqueira – Guilherme Avelino –
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
Ambientação com a Sintaxe de Java: parte 2 Prof. Gustavo Wagner Slides Originais: Prof. Tiago Massoni Desenvolvimento de Sistemas FATEC-PB  Centro de.
Transcrição da apresentação:

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

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

Visão Geral Comandos versus Expressões Efeitos colaterais Pascal e Java Linguagens funcionais Efeitos colaterais Um programa é um comando

BNF http://www.cin.ufpe.br/~in1007/linguagens/Imperativa1/imperativa1.html

Programa Exemplo 1 { var a = 3; write(a); { var a = 2, var b = 5; write(b+a) }; write(a) } = 3 2 7 3

= 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

= 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

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.)

Ambiente do Interpretador O ambiente pode ser modificado por atribuições e por declarações de variáveis!

Projeto e Implementação do Interpretador http://www.cin.ufpe.br/~in1007/linguagens/Imperativa1/imperativa1.html A execução de comandos retorna um ambiente derivado do que é recebido como argumento Modelo de projeto Partes do código

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

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