Universidade Estadual De Santa Cruz (UESC)
|
|
- Stefany da Rocha Peixoto
- 6 Há anos
- Visualizações:
Transcrição
1 Universidade Estadual De Santa Cruz (UESC) CET087 - Conceitos de Linguagem de Programação Prof. Dr. Marcelo Ossamu Honda Departamento de Ciências Exatas e Tecnológicas (DCET) mohonda.uesc(at)google(.)com
2 Programação Funcional Prof. Dr. Marcelo Ossamu Honda 2
3 Programação Funcional Dois modelos computacionais abstratos: Máquina de Turing: Proposta por Alan Turing; Modelo de fundamento para arquitetura de computadores proposta por John von Neumann; Paradigma de Programação Imperativa; (Lambda) λ-cálculo: Proposta por Alonzo Church; Conceito de avaliação de funções matemáticas; Programação funcional; Prof. Dr. Marcelo Ossamu Honda 3
4 Programação Funcional Programa Puramente Funcional: Expressão que caracteriza uma função matemática, juntamente com um elemento do domínio daquela função; A Execução de um Programa Funcional: É um processo computacional que permite determinar qual o elemento da imagem da função que corresponde ao elemento do domínio fornecido como parte do programa; Processo ocorre por meio de transformações sucessivas do programa, que devem convergir para o resultado desejado; Reduções; Prof. Dr. Marcelo Ossamu Honda 4
5 Programação Funcional Reduções: Redução de uma expressão funcional não significa tornar essa expressão mais curta ; Exemplo: Sem notação específica para programas funcionais; Dada a função f(x) = X X Se X = 4; A expressão inicial 4 4 é reduzida para o valor 256; 4 4 tendo dois dígitos; 256 três dígitos; Prof. Dr. Marcelo Ossamu Honda 5
6 Programação Funcional Dialetos das Linguagens de Programação Funcional: Incorpora recursos extras: Facilitar e agilizar a construção de programas; Pode, dificultar a análise dos programas; Não fazem parte da Programação Puramente Funcional: Recursos de Entrada/Saída de dados; Compartilhamento de variáveis; Prof. Dr. Marcelo Ossamu Honda 6
7 Programação Funcional (Lambda) λ-cálculo: Um programa funcional é composto por uma única expressão; Essa expressão deve descrever detalhadamente uma função e um elemento do domínio daquela função; A redução de um programa consiste em substituir uma parte da expressão original, obedecendo a certas regras de reescrita; Prof. Dr. Marcelo Ossamu Honda 7
8 Programação Funcional (Lambda) λ-cálculo: Propriedades essenciais de qualquer conjunto de regras de reescrita: Correção: Propriedade semântica; Deve preservar o significado das expressões; Confluência: Propriedade sintática; Se mais de uma regra for aplicável a uma expressão, a ordem de aplicação deve ser indiferente; Terminação: Propriedade sintática; O conjunto de regras não deve permitir que uma sequencia de reduções produza uma expressão idêntica a original; Prof. Dr. Marcelo Ossamu Honda 8
9 Programação Funcional (Lambda) λ-cálculo: Operações básicas: Substituição: Troca textual de todas as ocorrências de uma variável; Aplicação: Avaliação de uma função para um dado elemento de seu domínio; Abstração: Recurso básico para codificar funções; Indica quais símbolos em uma expressão são variáveis; No sentido matemático; Prof. Dr. Marcelo Ossamu Honda 9
10 Programação Funcional (Lambda) λ-cálculo: Operações básicas: Exemplo: seja F a expressão X + 5, sendo X uma variável; Essa expressão é indeterminada, no sentido que a variável X está livre para assumir qualquer valor arbitrário; Substituição: [ X 4 ] resulta na expressão 4 + 5; Abstração: A abstração λx.f, ou seja, λx.(x + 5), denota a função matemática que, para cada valor de X, associa o valor X + 5; Nessa expressão, a variável X não está mais livre para assumir um valor arbitrário; Aplicação: Um sistema de reduções deve permitir que se produza a sequencia de expressões λx.(x + 5) 4 => => 9; Prof. Dr. Marcelo Ossamu Honda 10
11 Programação Funcional Estratégias para Reduções: As propriedades de confluência e terminação garantem que qualquer sequencia de reduções deve levar ao mesmo resultado final; Diferentes estratégias para organizar essas sequencias, entretanto, podem levara sequencias menores para λ- termos específicos; Duas estratégias fundamentais: De dentro para fora (a priori); Do inglês Eager (gananciosa); De fora para dentro (sob demanda); Do inglês Lazy (sossegada); Prof. Dr. Marcelo Ossamu Honda 11
12 Programação Funcional De dentro para fora (a priori); Prof. Dr. Marcelo Ossamu Honda 12
13 Programação Funcional De fora para dentro (sob demanda); Prof. Dr. Marcelo Ossamu Honda 13
14 Programação Funcional Características: De dentro para fora (a priori): Implementação mais simples; Pode ocorrer de tentativas infinitas de reduções; Interpretadores e compiladores mais compactos; De fora para dentro (sob demanda): Resultados intermediários; Função, durante a redução, computacionalmente difícil ou demorada; Prof. Dr. Marcelo Ossamu Honda 14
15 Programação Funcional Linguagens de Programação Funcional: LISP: Necessidade de processamento de listas para aplicações de inteligencia artificial; Uso generalizado na área; Dados e programas com a mesma forma; Fazer um programa que construa outro programa; Scheme: Dialeto simples da LISP; Variáveis de escopo estático; Alguns recursos das Linguagens Imperativas; Common LISP: Incluir dialetos da linguagem LISP (grande); Variáveis de escopo estático e dinâmico; Recursos das Linguagens Imperativas; Prof. Dr. Marcelo Ossamu Honda 15
16 Programação Funcional Linguagens de Programação Funcional: ML: Variáveis de escopo estático; Fortemente tipificada; Sistema de inferência de tipos; Manipulação de exceções; Tipos de dados abstratos; Haskell: Puramente funcional; Método sob demanda; Listas infinitas; Prof. Dr. Marcelo Ossamu Honda 16
17 Programação Funcional Exemplo de lista; Prof. Dr. Marcelo Ossamu Honda 17
18 Programação Funcional Prof. Dr. Marcelo Ossamu Honda 18
19 CLISP Download: Prof. Dr. Marcelo Ossamu Honda 19
20 CLISP Instalação: tar -xvjf clisp-2.48.tar.bz2 cd clisp /configure --prefix=/opt/clisp cd src make su make install cd /opt ln -s clisp-2.48 clisp exit export path=$path:/opt/clisp/bin Prof. Dr. Marcelo Ossamu Honda 20
21 CLISP Prof. Dr. Marcelo Ossamu Honda 21
22 CLISP Saindo; Prof. Dr. Marcelo Ossamu Honda 22
23 CLISP Interpretador de comandos: Prof. Dr. Marcelo Ossamu Honda 23
24 CLISP Números: Valor inteiro; Valor inteiro negativo; Fração; Científico; Número complexo; a+bi Prof. Dr. Marcelo Ossamu Honda 24
25 CLISP Caracteres; #\ Prof. Dr. Marcelo Ossamu Honda 25
26 CLISP String; Prof. Dr. Marcelo Ossamu Honda 26
27 CLISP Constantes especiais; T: Verdadeiro; NIL: Falso; Prof. Dr. Marcelo Ossamu Honda 27
28 CLISP Funções: Prof. Dr. Marcelo Ossamu Honda 28
29 CLISP Funções: Prof. Dr. Marcelo Ossamu Honda 29
30 CLISP Funções: Prof. Dr. Marcelo Ossamu Honda 30
31 CLISP Funções: Prof. Dr. Marcelo Ossamu Honda 31
32 CLISP Variáveis: Prof. Dr. Marcelo Ossamu Honda 32
33 CLISP Condições: Prof. Dr. Marcelo Ossamu Honda 33
34 CLISP Condições: Prof. Dr. Marcelo Ossamu Honda 34
35 CLISP Declarações: (let ( declaration1 declaration2... ) expr1 expr2... ) Prof. Dr. Marcelo Ossamu Honda 35
36 CLISP Declarações: Prof. Dr. Marcelo Ossamu Honda 36
37 CLISP Funções: Sem parâmetros; Prof. Dr. Marcelo Ossamu Honda 37
38 CLISP Funções: Com parâmetro(s); Prof. Dr. Marcelo Ossamu Honda 38
39 CLISP Funções: Com parâmetro(s); Prof. Dr. Marcelo Ossamu Honda 39
40 CLISP Funções: Com parâmetro(s); Prof. Dr. Marcelo Ossamu Honda
41 CLISP Funções: Passando variáveis locais; Prof. Dr. Marcelo Ossamu Honda 41
42 CLISP Recursividade; Prof. Dr. Marcelo Ossamu Honda 42
43 CLIST Listas: Prof. Dr. Marcelo Ossamu Honda 43
44 CLIST Listas: NIL, também significa lista vazia; Prof. Dr. Marcelo Ossamu Honda 44
45 CLIST Listas: Prof. Dr. Marcelo Ossamu Honda 45
46 CLIST Compilando funções: Prof. Dr. Marcelo Ossamu Honda 46
47 CLIST Carregando de arquivos: Prof. Dr. Marcelo Ossamu Honda 47
48 CLIST Carregando de arquivos compilados: Prof. Dr. Marcelo Ossamu Honda 48
49 Exercícios 1) Construir a lista abaixo: (Bacharel em (Ciência da (Computação)) da ((Universidade Estadual) de Santa Cruz)) 2) Recuperar os elementos da lista, sem o letra _: _da _Computação _Universidade _Santa _Ciência da Computação Prof. Dr. Marcelo Ossamu Honda 49
50 Bibliografia Lisp Quickstart ( acessado em ; Robert W Sebesta; Conceitos de Linguagens de Programação. ISBN: , 2000; Ana Fernanda Gomes Ascencio e Edilene Aparecida Veneruchi de Campos; Fundamentos da programação de computadores - Algoritmos, P ascal, C/C++ e Java. Pearson-Prentice Hall, ISBN- 10: e ISBN-13: , 2007; Flávio Miguel Varejão; Linguagens de Programação - Conceitos e Técnicas. Campus, ISBN: , Ana Cristina Vieira De Melo e Flávio Soares Correa Da Silva; Princípios de Linguagens de Programação. Edgard Blucher, ISBN: , Prof. Dr. Marcelo Ossamu Honda 50
Universidade Estadual de Santa Cruz
Universidade Estadual de Santa Cruz Conceitos de Linguagens de Programação Linguagens Imperativas e Funcionais Prof. Dr. Rogério Vargas Ilhéus-Ba, 16 de Maio de 2013. Linguagens Imperativas Linguagens
Leia maisCentro Universitário do Triângulo
Centro Universitário do Triângulo Cálculo Lambda 1. Introdução A elaboração de modelos de computação (resolução de problemas por uma máquina) baseia-se em trabalhos de dois pesquisadores com enfoques bastante
Leia maisLinguagens de Programação
Visão Geral Faculdade de Computação - UFU Agosto - 2009 1 Princípios 2 O que é uma linguagem de programação? Linguagens naturais facilitam a expressão e o intercâmbio de idéias entre as pessoas. Assim
Leia maisLinguagens de Programação Funcional
Linguagens de Programação Funcional Conceitos de Linguagens de Programação Pedro Libório Setembro de 2013 2 Roteiro Introdução Funções matemáticas Fundamentos das linguagens de programação funcionais A
Leia maisConceitos de Linguagens de Programação
Conceitos de Linguagens de Programação Aula 03 Processo de Compilação Edirlei Soares de Lima Métodos de Implementação Arquitetura de Von Neumann: A linguagem de máquina de um computador
Leia maisAlgoritmos I Aula 1 Introdução aos Algoritmos
Algoritmos I Aula 1 Introdução aos Algoritmos Professor: Max Pereira max.pereira@unisul.br Ciência da Computação Ementa Algoritmos e Programas. Constantes, variáveis, tipos de dados e expressões. Construções
Leia maisCarga Horária: 60 h Créditos: 3 Pré-requisito: Não se aplica Professor(a): A definir Matricula: A definir Titulação: A definir
PLANO DE ENSINO Centro: Centro de Ciências Tecnológicas Curso: Engenharia Mecânica Departamento: Departamento de Matemática Informática Disciplina: Algoritmos e Programação Código: ASLNCUE085 Carga Horária:
Leia maisMINISTÉRIO DA EDUCAÇÃO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS DIRETORIA DE GRADUAÇÃO
DISCIPLINA: Linguagens de Programação CÓDIGO: 2ECOM.031 Data de Elaboração: Janeiro/2012 Carga Horária: Total: 30 h/a; Semanal: 02 aulas; Créditos: 02 Modalidade: Prática Classificação do Conteúdo pelas
Leia maisFundamentos de Programação
Fundamentos de Programação CP41F Apresentação do Plano de Ensino Aula 1 Prof. Daniel Cavalcanti Jeronymo Universidade Tecnológica Federal do Paraná (UTFPR) Engenharia de Computação 1º Período 1/16 Professor
Leia maisLinguagens de Programação Programação Funcional (Haskell)
Linguagens de Programação Programação Funcional (Haskell) Andrei Rimsa Álvares Sumário Introdução Programação funcional Linguagens funcionais Haskell Casamento de padrões Funções de ordem superior Avaliação
Leia maisAULA 02. Lógica de Programação. Centro Educação Profissional Ezequiel Ferreira Lima CEPEF. Curso Técnico em Eletrônica.
Centro Educação Profissional Ezequiel Ferreira Lima CEPEF Curso Técnico em Eletrônica. Prof. Eng. Samuel M. B. Cavalcante Lógica de Programação AULA 02 O que já estudamos? Lógica de programação é a técnica
Leia maisParadigmas de Programação
Paradigmas de Programação Fabrício Olivetti de França 14 de Junho de 2018 1 λ-cálculo 2 Computabilidade Computabilidade é uma área de estudo central da Ciência da Computação. Ela estuda a possibilidade
Leia maisLinguagem de Programação e Compiladores
Linguagem de Programação e Compiladores Fernando Antônio Asevedo Nóbrega Instituto de Ciências Matemáticas e de Computação USP SCC-206 Introdução à Compilação 24 de abril de 2012 1 / 20 Sumário 1 Introdução
Leia maisProgramação de Computadores
Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Conceito de Algoritmo Pseudocódigo Tipos de
Leia maisProgramação Funcional - Introdução a Cálculo Lambda
Programação Funcional - Introdução a Cálculo Lambda Cristiano Damiani Vasconcellos Universidade do Estado de Santa Catarina 1. Definição Cálculo lambda (λ-cálculo) é um modelo matemático capaz de ilustrar
Leia maisSemântica de Linguagens de Programação
Semântica de Linguagens de Programação Fabio Mascarenhas - 2011.2 http://www.dcc.ufrj.br/~fabiom/sem Introdução Quais das expressões abaixo têm o mesmo significado? a[42] (vector-ref a 42) a[42] a[42]
Leia maisLinguagens de Programação e Programação Funcional
Linguagens de Programação e Programação Funcional GSI004 Aula 01* Faculdade de Computação UFU *baseada nos slides do Professor Paulo Henrique Ribeiro Gabriel 30 de setembro de 2014 GSI004 Aula 01 30 de
Leia maisHistórico de Linguagens de Programação
Bacharelado em Ciência da Computação PARADIGMAS DE PROGRAMAÇÃO Histórico de Linguagens de Programação Prof. Claudinei Dias email: prof.claudinei.dias@gmail.com Objetivos Geral: Estudar as características
Leia maisPLANO DE UNIDADE DIDÁTICA- PUD
Professor: Marcus Vinícius Midena Ramos Coordenação: Ricardo Argenton Ramos Data: 03/08/2010 Página: 1 de 5 EMENTA: Conceitos básicos de linguagens. Histórico, classificação e principais aplicações de
Leia maisQuestões de Paradigmas de Programação Matéria: Prova 1 4ª EDIÇÃO
Questões de Paradigmas de Programação Matéria: Prova 1 4ª EDIÇÃO QUESTÃO 1 : Enviada por: Francisco Carlos Moraes Junior Duvidas: Thaise Domínios de programação são áreas onde os computadores são usados.
Leia maisFUNDAÇÃO UNIVERSIDADE FEDERAL DO VALE DO SÃO FRANCISCO
Professor: Marcelo Santos Linder Disciplina: Algoritmos e Programação Código Disciplina: Carga Horária: 60h Período: Pág. 1 de 5 PROFESSOR TITULAÇÃO: Engenheiro de Computação EMENTA: Conceito de algoritmo.
Leia maisFundamentos de Programação
Fundamentos de Programação CP41F Apresentação do Plano de Ensino Aula 1 Prof. Daniel Cavalcanti Jeronymo Universidade Tecnológica Federal do Paraná (UTFPR) Engenharia de Computação 1º Período 2015.1 1/16
Leia maisMétodos de implementação de linguagens. Kellen Pinagé
Métodos de implementação de linguagens Kellen Pinagé Sumário Métodos de implementação de linguagens Compilação Interpretação pura Híbrido Métodos de implementação de linguagens Principais componentes de
Leia maisAspectos preliminares
Aspectos preliminares Linguagens de Programação Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional. http://github.com/malbarbo/na-lp-copl
Leia maisProgramação Funcional
Programação Funcional Lucília Camarão de Figueiredo Universidade Federal de Ouro Preto lucilia@dcc.ufmg.br Aula 01: Introdução 1 PARADIGMAS DE PROGRAMAÇÃO Imperativo (FORTRAN, PL1, Ada, C, Pascal) Sequência
Leia maisParadigmas de Programação
Paradigmas de Programação Sintaxe e semântica Aula 4 Prof.: Edilberto M. Silva http://www.edilms.eti.br Prof. Edilberto Silva / edilms.eti.br Sintaxe A sintaxe de uma linguagem de programação é a forma
Leia maisIntrodução à Programação Aula 03. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação
Aula 03 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação Linguagens de Programação A primeira linguagem de programação foi criada por Ada Lovelace. Amiga
Leia maisMecanismos de Interrupção e de Exceção, Barramento, Redes e Sistemas Distribuídos. Sistemas Operacionais, Sistemas
Arquitetura de Computadores, Arquitetura de Computadores Organização de Computadores, Conjunto de Instruções, Sistemas Operacionais, Sistemas Operacionais, Sistemas Mecanismos de Interrupção e de Exceção,
Leia maisFundamentos de programação
Fundamentos de programação Aula Introdutória Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Apresentação Disciplina: Fundamentos de Programação Horário: 2 E0E1, 4E0E1, 6CD Professor:
Leia maisProgramação Orientada a Objetos. Programação Funcional
Programação Orientada a Objetos Programação Funcional Cristiano Lehrer, M.Sc. Introdução (1/3) É uma categoria de linguagens não-imperativas. Imperativas: Uso eficiente das arquiteturas de computadores
Leia maisLinguagens de Programação Aula 3
Aula 3 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada... Classificação das LPs (nível, geração e paradigma) Paradigmas Imperativo, OO, funcional, lógico e concorrente 2/33 Na aula de hoje...
Leia maisAutômatos e Linguagens
Autômatos e Linguagens Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Agosto, 2016 1 / 41 Sumário 1 Compiladores 2 Linguagens de programação 3 Ciência dos compiladores
Leia maisParadigmas de Linguagem de Programação. Aspectos Básicos
Paradigmas de Linguagem de Programação Aspectos Básicos Introdução Nesta segunda etapa de nossos estudos, veremos: aspectos básicos de programa e linguagem de programação; revisão de conceitos de compilador
Leia maisFUNDAÇÃO UNIVERSIDADE FEDERAL DO VALE DO SÃO FRANCISCO
Professor: Fábio Nelson de Sousa Pereira Disciplina: e Carga Horária: 30 hs Pág. 1 de 5 EMENTA: Conceito de algoritmo. Lógica de programação e programação estruturada. Linguagem de definição de algoritmos.
Leia maisProgramação de Computadores
Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Conceito de Algoritmo Pseudocódigo
Leia maisCompiladores. Eduardo Ferreira dos Santos. Fevereiro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 38
Compiladores Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Fevereiro, 2017 1 / 38 Sumário 1 Compiladores 2 Linguagens de programação 3 Ciência dos compiladores
Leia maisProgramação de Computadores:
Instituto de C Programação de Computadores: Introdução a Linguagens de Programação Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Seis Camadas Problema
Leia maisSemântica Denotacional
Semântica Denotacional Uma introdução ISBN 0-321-19362-8 Semântica denotacional é um método formal para definir a semântica de linguagens de programação. Interessa a: projetista de linguagens, quem escreve
Leia maisParadigmas de Linguagem de Programação
Paradigmas de Linguagem de Programação Aula 1 - Introdução Prof. Filipo Mór 2016/II - www.filipomor.com Apresentação do Professor B.Sc. SI FDBPOA 2012 M.Sc. em CC PUCRS/DALHOUSIE 2015 Atuação na área de
Leia maisFUNDAÇÃO UNIVERSIDADE FEDERAL DO VALE DO SÃO FRANCISCO
Professor: Marcelo Santos Linder Disciplina: Algoritmo e Programação Carga Horária: 30 hs Pág. 1 de 5 EMENTA: Conceito de algoritmo. Lógica de programação e programação estruturada. Linguagem de definição
Leia maisProgramação de Computadores
Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Paradigmas para linguagens de Programação
Leia maisConceitos de Linguagem de Programação - 2
Conceitos de Linguagem de Programação - 2 Arthur Jovita Guerra Thalles Santos Silva Universidade Estadual de Santa Cruz - Ilhéus, BA 1 de novembro de 2011 1 Revisão Natureza das linguagens de Programação
Leia maisNomes, vinculações e escopos
Nomes, vinculações e escopos Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
Leia mais15/03/2018. Professor Ariel da Silva Dias Aspectos sintáticos e semânticos básicos de linguagens de programação
Professor Ariel da Silva Dias Aspectos sintáticos e semânticos básicos de linguagens de programação Conjunto de regras que definem a forma da linguagem; Como as sentenças podem ser formadas como sequências
Leia maisIntrodução à Programação Funcional
Introdução à Programação Funcional PPGIA - PUCPR Prof. Fabrício Enembreck 1 Conteúdo Introdução ao Cálculo Lambda e à Programação Funcional Introdução ao LISP e ao CLisp Funções Lambda e binding Funções
Leia maisEstruturas de Dados. Prof.: Carlos Alberto Página da Disciplina:
Estruturas de Dados Prof.: Carlos Alberto Página da Disciplina: http://alged.webnode.com/ E-mail: carlos36_batista@yahoo.com.br Estruturas de dados Programa da disciplina Estruturas de dados - referências
Leia maisao paradigma imperativo
PARADIGMA FUNCIONAL PARADIGMA FUNCIONAL: INTRODUÇÃO G Exemplos de linguagens funcionais LISP - Início: LP puramente funcional - Depois: acréscimo de alguns recursos imperativos (aumentaram eficiência de
Leia maisRevisão: linguagens de programação
Revisão: linguagens de programação Definição, histórico, paradigmas e semântica Prof. Thiago A. S. Pardo taspardo@icmc.usp.br Definição Uma linguagem de programação é uma linguagem destinada a ser usada
Leia maisCONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO
CONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO ROTEIRO 1. INTRODUÇÃO 2. LINGUAGENS IMPERATIVAS 1. CONCEITO 2. PARADIGMA IMPERATIVO 3. ORIGENS 4. MODELO COMPUTACIONAL 1. ARQUITETURA DE VON NEUMANN 2. CARACTERISTICAS
Leia maisDESENVOLVIMENTO DO COMPILADOR PARA A LINGUAGEM SIMPLE
DESENVOLVIMENTO DO COMPILADOR PARA A LINGUAGEM SIMPLE Jeferson MENEGAZZO 1, Fernando SCHULZ 2, Munyque MITTELMANN 3, Fábio ALEXANDRINI 4. 1 Aluno 5ª fase do Curso de Ciência da Computação do Instituto
Leia maisTeoria da Computação (BBC244)
Teoria da Computação (BBC244) Professor: Anderson Almeida Ferreira anderson.ferreira@gmail.com http://www.decom.ufop.br/anderson Sala COM 10 DECOM-UFOP Ementa Gramáticas. Linguagens. Operações com Linguagens.
Leia maisEstrutura de Dados e Lógica de Programação. Cátia Alves Marcelo Nunes 102 h/a 17/08/2015 a 12/12/2015
Curso / Módulo Técnico em Informática Módulo I Componente Curricular Estrutura de Dados e Lógica de Programação Professora Formadora Tutores Carga Horária Período Lucélia Oliveira Cátia Alves Marcelo Nunes
Leia maisJuliana Kaizer Vizzotto. Universidade Federal de Santa Maria. Disciplina de Teoria da Computação
Universidade Federal de Santa Maria Disciplina de Teoria da Computação Quais são as capacidades e limitações fundamentais dos computadores? Funções Computáveis Algoritmo: descrição finitade uma computação
Leia maisLinguagens de Programação
Linguagens de Programação Prof a Jerusa Marchi Departamento de Informática e Estatística Universidade Federal de Santa Catarina e-mail: jerusa@inf.ufsc.br Linguagens de Programação p. 1/5 Linguagens de
Leia maisLinguagens Formais e Autômatos. Tiago Alves de Oliveira
Linguagens Formais e Autômatos Tiago Alves de Oliveira Ementa Linguagens Regulares; Máquinas de Turing; O Problema da Parada da Máquina de Turing; Autômatos Finitos; Linguagens Livres de Contexto; Autômatos
Leia maisPROGRAMAÇÃO ORIENTADA A OBJETOS I -CONCEITOS PRELIMINARES. Prof. Angelo Augusto Frozza, M.Sc.
PROGRAMAÇÃO ORIENTADA A OBJETOS I -CONCEITOS PRELIMINARES Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO O que é programação Linguagens de Programação Paradigmas de Programação História
Leia maisNomes, vinculações e escopos
Nomes, vinculações e escopos Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Aula 01 Apresentação da Disciplina Prof.ª Danielle Casillo PLANO DE ENSINO Nome: Teoria da Computação Créditos:
Leia maisParadigmas de Linguagens
Paradigmas de Linguagens Paradigma Imperativo Professora Sheila Cáceres Paradigma Imperativo Um pouco de historia Paradigma fundamentado no conceito de máquina de Turing. A máquina de Turing é uma abstração
Leia maisAlgoritmos e Introdução à Programação. Lógica e Linguagem de Programação
Algoritmos e Introdução à Programação Lógica e Linguagem de Programação Prof. José Honorato Ferreira Nunes honoratonunes@softwarelivre.org http://softwarelivre.org/zenorato/honoratonunes Linguagem C Prof.
Leia maisI.2 Introdução a Teoria da Computação
I.2 Introdução a Teoria da Computação O que é? Fundamento da Ciência da Computação Tratamento Matemático da Ciência da Computação Estudo Matemático da Transformação da Informação Qual sua importância?
Leia maisINE5317 Linguagens Formais e Compiladores AULA 3: Introdução a Teoria da Computação
INE5317 Linguagens Formais e Compiladores AULA 3: Introdução a Teoria da Computação bas eado em material produzido pelo prof Olinto Jos é Varela Furtado Ricardo Azambuja Silveira INE-CTC-UFSC E-Mail: silveira@inf.ufsc.br
Leia maisIntrodução à Ciência da Computação. Prof. Dr. Rogério Vargas
Introdução à Ciência da Computação Prof. Dr. Rogério Vargas http://rogerio.in O que é dado? - Defino dado como uma sequência de símbolos quantificados ou quantificáveis. - Letras são símbolos quantificados.
Leia maisCapítulo 1 Introdução
livro haskell novatec 2006/10/9 14:49 page 23 #23 Capítulo 1 Introdução Este capítulo apresenta um contexto da linguagem Haskell. Trata-se de uma linguagem de programação para propósitos gerais, destinada
Leia maisINTRODUÇÃO. Prof. Msc. Luis Filipe Alves Pereira 2015
INTRODUÇÃO Prof. Msc. Luis Filipe Alves Pereira 2015 INTRODUÇÃO 02/21 QUAIS AS OPERAÇÕES BÁSICAS REALIZADAS EM UM COMPUTADOR DIGITAL? INTRODUÇÃO 03/21 QUAIS AS OPERAÇÕES BÁSICAS REALIZADAS EM UM COMPUTADOR
Leia maisAula 06 - Máquina Multinível e Von Neumann
Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte Campus Currais Novos Instalação e Organização de Computadores Aula 06 - Máquina Multinível e Von Neumann Prof. Diego Pereira
Leia maisAula prático/expositiva. Resolução de exercícios propostos e participação em sala de aula. 2h 08/05
Av. Antonio Carlos Magalhães, 512 Santo Antônio Juazeiro, BA, CEP 48903210 Tel/Fax: (74) 36141938 Caixa Postal 252, PetrolinaPE, www.univasf.edu.br PLANO DE UNIDADE DIDÁTICA PUD Professor: Marcelo Santos
Leia maisLinguagens de Programação
Universidade Federal do Rio Grande do Norte Centro de Tecnologia Departamento de Computação e Automação Linguagens de Programação Professor Responsável: Luiz Affonso Henderson Guedes de Oliveira Prof.
Leia maisLinguagens Formais e Autômatos (BBC242) Professor: Anderson Almeida Ferreira DECOM-UFOP
Linguagens Formais e Autômatos (BBC242) Professor: Anderson Almeida Ferreira DECOM-UFOP Ementa Gramáticas. Linguagens Regulares, Livres-de-Contexto e Sensíveis-ao- Contexto. Tipos de Reconhecedores. Operações
Leia maisCálculo Lambda Sem Tipos
Cálculo Lambda Sem Tipos Cálculo lambda sem tipos Peter Landin (60 s) observou que uma linguagem de programação pode ser compreendida formulando-a em um pequeno núcleo capturando suas características essenciais
Leia maisEderson Luiz da Silva Ciência da Computação. Algoritmos e Programação
Ederson Luiz da Silva Ciência da Computação Algoritmos e Programação Linguagem de programação Linguagem de Programação Linguagem de máquina http://www.assemblyprogressivo.net/p/curso.html Linguagem de
Leia maisCompiladores. Introdução
Compiladores Introdução Apresentação Turma Noite Continuada I 20/03 Continuada II 22/05 Atividades Regimental 05/06 Total 1 Ponto 1 Ponto 1 Ponto 7 Pontos 10 Pontos Aulas expositivas teórico-práticas Exercícios
Leia maisFunções Recursivas. Prof.: Edson Holanda Teoria da computação - Diverio e Menezes
Funções Recursivas Prof.: Edson Holanda edsonholanda@gmail.com Teoria da computação - Diverio e Menezes Tipos de Formalismos Operacional Define-se uma máquina abstrata, baseada em estados, em instruções
Leia maisLinguagens de programação funcional
Linguagens de programação funcional Linguagens de Programação Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional. http://github.com/malbarbo/na-lp-copl
Leia maisAlgoritmos e Introdução à Programação. Lógica e Linguagem de Programação
Algoritmos e Introdução à Programação Lógica e Linguagem de Programação Prof. José Honorato Ferreira Nunes honoratonunes@softwarelivre.org http://softwarelivre.org/zenorato Funções e Procedimentos (sub-rotinas)
Leia maisCompiladores. Análise Semântica
Compiladores Análise Semântica Análise semântica A semântica define o significado dos programas sintaticamente corretos; Por exemplo, em C, a instrução if(a>b) max = a; else max = b; Diz que a expressão
Leia maisParadigmas de Linguagens Computacionais (PLC) (Apresentação da disciplina)
Paradigmas de Linguagens Computacionais (PLC) (Apresentação da disciplina) George Darmiton da Cunha Cavalcanti (gdcc@cin.ufpe.br) Informações Básicas Professor George Darmiton da Cunha Cavalcanti Monitores
Leia maisConceito de Linguagens de Programação - 1
Conceito de Linguagens de Programação - 1 Arthur Jovita, Thalles Silva November 1, 2011 1 Natureza das linguagens de Programação Linguagens Estáticas e Dinâmicas 2 Tipificação 3 4 Linguagens Estáticas
Leia maisUniversidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores
Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores 2013-2 Compilador para a Linguagem Cafezinho Especificação dos trabalhos: T2 (Geração da Representação Intermediária e Análise
Leia maisCOMPILAÇÃO. Ricardo José Cabeça de Souza
COMPILAÇÃO Ricardo José Cabeça de Souza www.ricardojcsouza.com.br Programas Código-fonte escrito em linguagem de programação de alto nível, ou seja, com um nível de abstração muito grande, mais próximo
Leia maisLógica de Programação II
Gilson de Souza Carvalho gaucho.gilson@hotmail.com 1 Carga Horária: 72 horas Nº Créditos: 04 aulas Objetivo: Lógica de Programação II Resolver problemas usando os comandos básicos da linguagem (C). Com
Leia maisInformações. Programação Funcional. Por que um curso de programação funcional? O que é Programação Funcional? Objetivos da programação funcional
Informações Sérgio Soares scbs@cin.ufpe.br Linguagens de Programação 2 Paradigma de Carga Horária: 60h Horário: 2 as e 6 as das 10h30 as 12h10 Local: 2 as no LIP4 e 6 as no LIP1 Grupo http://groups.yahoo.com/group/lp2_poli
Leia maisPLANO DE ENSINO E APRENDIZAGEM CURSO: Tecnologia em Análise e Desenvolvimento de Sistemas
Disciplina: Construção de Algoritmos C.H. Teórica: 60 PLANO DE ENSINO E APRENDIZAGEM CURSO: Tecnologia em Análise e Desenvolvimento de Sistemas Período Letivo: Série: Periodo: Semestre de 2 sem/2012 2ª
Leia maisConstrução de Compiladores. Capítulo 1. Introdução. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2014.
Construção de Compiladores Capítulo 1 Introdução José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2014.2 1/22 1 Linguagens de programação 2 Compilação 2/22 Tópicos 1
Leia maisConceitos Básicos. Fundamentos de Programação de Computadores
Conceitos Básicos Instituto Federal de Educação, Ciência e Tecnologia do Triângulo Mineiro Prof. Edwar Saliba Júnior Fevereiro de 2018 Unidade 01 Conceitos Básicos 1/15 Curiosidade Ranking das Linguagens
Leia maisReinaldo Gomes Análise/projeto estruturado
Programação Orientada a Objetos Objetos, Classes e Mensagens O Modelo de Objetos Objetos e Classes Mensagens e métodos Reinaldo Gomes reinaldo@cefet-al.br Decomposição Análise/projeto estruturado Soluciona
Leia maisParadigmas de Linguagens
Paradigmas de Linguagens Aula 2: Tipos de dados Professora Sheila Cáceres Tipos de dados Dados são a matéria prima da computação junto com os programas. LPs precisam manipular dados. LPS utilizam os conceitos
Leia maisIntrodução a Programação
Introdução a Programação Prof. André Gustavo Duarte de Almeida andre.almeida@ifrn.edu.br docente.ifrn.edu.br/andrealmeida Aula 01 Informática e a Programação Roteiro Informática Pensar e Programar Atividades
Leia maisAspectos preliminares
Aspectos preliminares Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
Leia maisCONCEITOS DE ALGORITMOS
CONCEITOS DE ALGORITMOS Fundamentos da Programação de Computadores - 3ª Ed. 2012 Editora Prentice Hall ISBN 9788564574168 Ana Fernanda Gomes Ascênsio Edilene Aparecida Veneruchi de Campos Algoritmos são
Leia maisINE5622 INTRODUÇÃO A COMPILADORES
INE5622 INTRODUÇÃO A COMPILADORES PLANO DE ENSINO Objetivo geral Conhecer o processo de especificação e implementação de linguagens de programação, a partir do estudo dos conceitos, modelos, técnicas e
Leia maisAspectos preliminares
Aspectos preliminares Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
Leia maisVisão Geral... e conceitos básicos
Visão Geral.. e conceitos básicos 1 Curso de... Programação O que se estuda aqui? Algoritmos 2 E o que são algoritmos? Sequência finita e não ambígua de passos para a solução de um problema. Lembre- se
Leia maisComputação efectiva. Que linguagens podem ser reconhecidas por algum tipo de autómato?
Computação efectiva Que linguagens podem ser reconhecidas por algum tipo de autómato? O que é ser computável? Que linguagens são computáveis? Existem linguagens que não são computáveis? Isto é, existem
Leia maisSEMÂNTICA. Rogério Rocha. rode = program simples = var x : int := 3 in x := x + 5 end.
SEMÂNTICA program simples = var x : int := 3 in x := x + 5 end. rode =? Rogério Rocha Roteiro Introdução Sintaxe Semântica Dinâmica (Métodos formais) Operacional Axiomática Denotacional Estática Conclusão
Leia maisProgramação de Computadores IV. Introdução a Linguagens de Programação Simone Martins SLIDES CEDIDOS POR BRUNO MARQUES 1
Programação de Computadores IV Introdução a Linguagens de Programação Simone Martins simone@ic.uff.br SLIDES CEDIDOS POR BRUNO MARQUES 1 Arquitetura de programação 2 O Que é um Dado? Dado é o elemento
Leia mais