LINGUAGENS FORA DO PADRÃO DE MERCADO

Tamanho: px
Começar a partir da página:

Download "LINGUAGENS FORA DO PADRÃO DE MERCADO"

Transcrição

1 LINGUAGENS FORA DO PADRÃO DE MERCADO Alunos: Clayton Reis da Silva Leonardo Lessa Aramaki Leonardo Machado Azevedo Manoel Mariano Siqueira Júnior

2 Essas pessoas criaram as linguagens de programação Forth, Prolog, Ada. Todas estas linguagens tinhas diversas vantagens e pontos inovadores. Entretanto, nenhuma delas foi muito utilizada. Essas pessoas criaram C e Unix, que esta sendo utilizado por mais de 30 anos...

3 Estas pessoas criaram as primeiras linguagens de programação orientadas a objetos - Smalltalk e Simula. Nenhuma destas linguagens foi muito divulgada.

4 Essa pessoa tentou colocar orientação a objeto na linguagem C, criando o Objective C. A linguagem criada não foi amplamente utilizada; hoje em dia ela é utilizada as vezes nos sistemas operacionais Mac OS.

5 Outra pessoa tentou colocar orientação a objeto na linguagem C, criando C++. Através de um simples olhar para a cara desta pessoa é possível ver que C++ teve um sucesso muito maior que o objective C.

6 Eifell, Scheme, Cecil, Haskell, Erlang - linguagens de programação muito interessantes, porém não utilizadas por ninguém além de pessoas especializadas Qual é a regra até agora? Se a pessoa tem barba, ela tem sucesso. Se a pessoa não tem barba...

7 Autor do Basic. Não tem barba, mas tem bigode. Basic é amplamente utilizado, porém tem fama ruim.

8 O problema é o bigode... Perl é uma outra linguagem de programação que tem praticamente a mesma utilização que o Basic e uma má fama quase igual a ele :-). Olham só o bigode do autor da linguagem!

9 Autores de linguagens Ruby e Python. Muito menos utilizados que Perl e Basic. Autores de Lisp e Pascal.

10 Autor de Java. Autor de C#.

11 BRAINFUCK Uma linguagem feita para diversão

12 [> > >++ +>+<<<<] >++.> >++.<< > >+.>. Acima está o código do Hello World escrito em Brainfuck. Fácil de decorar, não?

13 UM POUCO DE HISTÓRIA: - QUEM A CRIOU - PARA QUE FOI CRIADA O compilador de 200 bytes. - PORQUE NÃO DEU CERTO ASPECTOS DA LINGUAGEM: - ELEMENTOS: Um array de bytes e um ponteiro que se move pelo array. - FERRAMENTAS: A habilidade de incrementar/decrementar a célula do array; Ler o byte da entrada e escrever um byte na saída.

14 - COMO FUNCIONA Os oito caracteres da linguagem:, /. / < / > / + / - / [ / ] - PROBLEMAS: A dificuldade de ler o código; O comportamento quanto aos estouros de array. LINGUAGENS PARENTES : A mãe : P As linguagens que vieram após a Brainfuck. CURIOSIDADES

15 EIFFEL preocupação com Engenharia de Software

16 VISÃO GERAL HISTÓRIA criada por Bertrand Meyer em 1985 CARACTERÍSTICAS PRINCIPAIS DA LINGUAGEM SIMPLICIDADE instruções básicas (atribuição, criação de objeto, rotina, condicional, iteração, case), sintaxe simples ORIENTAÇÃO À OBJETOS PROJETO POR CONTRATO conceito de Engenharia de Software PORTABILIDADE Windows, Linux, UNIX, OS/2, entre outros GARBAGE COLLECTOR

17 FILOSOFIA POR TRÁS DA LINGUAGEM Eiffel foi desenvolvida com a preocupação de Engenharia de Software, com o conceito conhecido como Projeto por Contrato, que básicamente são checagens de condições denominadas asserções: class invariants pré-condições pós-condições

18 Suponha que queremos que nossos contadores sejam sempre nãonegativos. A classe terá uma invariante: indexing... class COUNTER feature... invariant item >= 0 A palavra-chave require inicia a pré-condição. A palavra-chave ensure inicia a pós-condição. decrement is -- Decrease counter by one require item > 0 do item := item -1 ensure item = old item -1 end. -- old "item" representa o valor de "item" antes do método ser chamado.

19 Por que não deu certo? Linguagem pouco acessível, sem padrão ISO/ANSI Pouca fama de confiabilidade Código trabalhoso

20 classe HELLO WORLD (hello_world.e) class HELLO_WORLD creation make feature make is local do io:basic_io!!io io.put_string("%n Hello World!!!!") end --make end -- class HELLO_WORLD

21 Forth Uma linguagem para microprocessadores

22 ALGUMAS CARACTERÍSTICAS: - PROCEDURAL - BASEADA EM PILHAS DE DADOS - COMANDOS ORGANIZADOS EM UMA LISTA EXTENSÍVEL CHAMADA DE DICIONÁRIO - TRABALHA FACILMENTE COM BASES ENTRE 2 E 36 - PODE SER TANTO COMPILADA QUANTO INTERPRETADA - APRESENTA ESTRUTURAS DE CONTROLE COMUNS EM LINGUAGENS PROCEDURAIS

23 DEFINIÇÃO DE UMA PALAVRA (COMANDO) FORTH: : NOME PALAVRA_1 PALAVRA_2... PALAVRA_N ; EXEMPLO DE DEFINIÇÃO DE PALAVRA: : HELLO. HELLO WORLD!!! ;

24 VANTAGENS: - EXTREMAMENTE COMPACTA - FACILMENTE DEPURÁVEL - ALTA ROBUSTEZ - BAIXO CUSTO NO DESENVOLVIMENTO DE SISTEMAS NESSA LINGUAGEM DESVANTAGENS - EXIGE, NO MÍNIMO, UM NÍVEL RAZOÁVEL DE CONHECIMENTO DA ESTRUTURA DA LINGUAGEM - REQUER CONHECIMENTO DO HARDWARE E DA ARQUITETURA DA MÁQUINA ONDE ELA SERÁ UTILIZADA

25 UTILIZAÇÕES: - É APLICADA EM SISTEMAS COMPOSTOS DE MICROPROCESSADORES PARA DESEMPENHAR FUNÇÕES DE CONTROLE OU MONITORAÇÃO DE ROBÔS, AERONAVES, AUTOMÓVEIS, APARELHOS DOMÉSTICOS, ETC. - É USADA NO CARREGADOR DE BOOT DO SISTEMA OPERACIONAL FREEBSD POR QUE NÃO É PADRÃO DE MERCADO? PORQUE É UMA LINGUAGEM COM FINS ESPECÍFICOS.

26 - LISP - A LINGUAGEM DA INTELIGÊNCIA

27 Inventada por John McCarthy (1959); LISP = LISt Processing a lista é a estrutura de dados fundamental desta linguagem; Muito usada em Inteligência Artificial; Manipulação de informação simbólica ; Muitas versões e dialetos: FranzLisp, MacLisp, InterLisp, Scheme, LeLisp, ZetaLisp e Common LISP (praticamente o padrão) ; Estilo de programação funcional uso intenso de recursão; LISP é freqüentemente implementada por um interpretador Usuário entra com uma expressão; Interpretador avalia expressão e imprime o resultado; Gerenciamento de memória automático (garbage collector)

28 PRINCIPAIS ESTRUTURAS DE DADOS EM LISP 2 Estruturas de dados principais: o átomo e a lista Átomo Símbolos a b c xxx x1 x-1 Constantes Números: Cadeias: abc de x y z 2 símbolos especiais para boolean: nil e t nil : false t : true Lista seqüência de átomos ou listas entre parênteses

29 FUNÇÕES Principais Funções pré-definidas: Aritmética: + - / * > ( ) 18 Relacionais: > = < >= <= > (> 3 4) nil Manipulação de listas: car cdr cons > (car '(a b)) A Condicionais: if cond > (cond ((= 1 2) 'a) ((> 2 3) 'b) ((< 3 4) 'c) ) C

30 Lógicas: AND OR NOT Apenas Números > (or (< 2 3) (> 2 3)) T Para comparar símbolos, usa-se o predicado eq, e para comparar listas estruturalmente, usa-se o predicado equal. Funções definidas pelo usuário: (defun nome lista-de-argumentos expressão) Define uma função chamada nome que avalia expressão substituindo os símbolos da lista-de-argumentos pelos valores passados quando a função for invocada > (defun test (a b) (* 2 (+ a b))) TEST > (test 3 4) 14

31 PORQUE NÃO É PADRÃO DE MERCADO? LISP evoluiu durante mais de 30 anos e se desenvolveu para a inteligência artificial, mas não é adequado para aplicações convencionais, pois a sua base é voltada para a programação lógica.

32 CONCLUSÃO: O que define uma linguagem de programação ser fora do padrão de mercado? As linguagens que foram apresentadas são fora do padrão de mercado, porém não necessáriamente foram mal projetadas, muitas vezes possuindo vantagens ou mesmo idéias inovadoras. Mas por que não deram certo? Algumas são inovadoras demais, outras são para fins bem específicos, não tendo uma abrangência muito ampla. Há algumas linguagens que nem são sérias, e outras, embora bem projetadas, não são muito acessíveis, não sendo padronizadas ou mesmo eficientemente suportadas por uma comunidade desenvolvedora.

Conceitos de Linguagens de Programação - Características. Paavo Soeiro

Conceitos de Linguagens de Programação - Características. Paavo Soeiro Conceitos de Linguagens de Programação - Características Paavo Soeiro Motivação Para que possa escolher uma linguagem apropriada ao problema. Melhorar o entendimento da linguagem utilizada. Facilitar o

Leia mais

Linguagem de Programação I Prof. Tiago Eugenio de Melo.

Linguagem de Programação I Prof. Tiago Eugenio de Melo. Linguagem de Programação I Prof. Tiago Eugenio de Melo [email protected] www.tiagodemelo.info 1 Sumário Introdução Conceitos preliminares Introdução Variáveis Comandos Condicionais 2 Por que aprender a

Leia mais

Linguagens de Programação

Linguagens de Programação Linguagens de Programação Paradigma Imperativo Matheus Hafner Tiago Xavier CET 087 - Conceitos de Linguagens de Programação (CLP) 17 de novembro de 2011 Aula Prática Instalação Fortran sudo apt-get install

Leia mais

1 Introdução à Programação O que é? Para que serve?... 1

1 Introdução à Programação O que é? Para que serve?... 1 Nesta aula... Conteúdo 1 Introdução à Programação 1 1.1 O que é?................................. 1 1.2 Para que serve?............................. 1 2 Linguagens de programação 2 2.1 Programação estruturada........................

Leia mais

Paradigmas de Programação

Paradigmas de Programação Paradigmas de Programação Prof.: Edilberto M. Silva http://www.edilms.eti.br Aula 2 Linguagens de Programação Desenvolvimento e execução de programas Características de linguagens Execução de programas

Leia mais

Introdução à Programação Funcional. Conteúdo

Introdução à Programação Funcional. Conteúdo 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 Common Lisp Funções Lambda e binding

Leia mais

Linguagens de Programação

Linguagens 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: [email protected] Linguagens de Programação p. 1/5 Linguagens de

Leia mais

Linguagem de Programação e Compiladores

Linguagem 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 mais

ao paradigma imperativo

ao 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 mais

Informática I. Aula 9. Aula 9-17/05/2006 1

Informática I. Aula 9.  Aula 9-17/05/2006 1 Informática I Aula 9 http://www.ic.uff.br/~bianca/informatica1/ Aula 9-17/05/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação

Leia mais

Capítulo 1. Aspectos Preliminares

Capítulo 1. Aspectos Preliminares Capítulo 1 Aspectos Preliminares Tópicos do Capítulo 1 Razões para estudar conceitos de linguagens de programação Domínios de programação Critérios de avaliação de linguagens Influências no projeto de

Leia mais

Linguagens de Programação

Linguagens 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 mais

Python - Variáveis e expressões

Python - Variáveis e expressões Python - e expressões Prof. Paulo H R Gabriel (com base no material do Prof. André Backes) Linguagem de Máquina Computador entende apenas pulsos elétricos Presença ou não de pulso 1 ou 0 Tudo no computador

Leia mais

Conceitos de Linguagem de Programação - 2

Conceitos 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 mais

Uma Aula Prática sobre LISP

Uma Aula Prática sobre LISP MAC 5710 - Estruturas de Dados - 2008 Linguagem LISP Surgiu no final dos anos 50 - John McCarthy (MIT). Linguagem para processamento simbólico. Muito usada em aplicações em Inteligência Artificial. Outras

Leia mais

Introdução à Programação Aula 03. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Introdução à Programação Aula 03. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Aula 03 Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação Linguagens de Programação A primeira linguagem de programação foi criada por Ada Lovelace. Amiga

Leia mais

Programação I A Linguagem C. Prof. Carlos Alberto

Programação I A Linguagem C. Prof. Carlos Alberto Programação I A Linguagem C Prof. Carlos Alberto [email protected] [email protected] 2 Origem A linguagem C foi desenvolvida em 1972, nos Laboratórios Bell, por Dennis Ritchie. Implementada

Leia mais

Introdução à linguagem C

Introdução à linguagem C MCTA028 Programação Estruturada Introdução à linguagem C Material preparado a partir de slides dos profs. Jesús MenaChalco e Fabrício Olivetti Prof. Guilherme Mota Q3-2018 1 Linguagens de programação 2

Leia mais

Capítulo 7. Expressões e Sentenças de Atribuição

Capítulo 7. Expressões e Sentenças de Atribuição Capítulo 7 Expressões e Sentenças de Atribuição Introdução Expressões são os meios fundamentais de especificar computações em uma linguagem de programação Para entender a avaliação de expressões, é necessário

Leia mais

Paradigmas de Programação

Paradigmas de Programação Paradigmas de Programação Aula 3 Histórico das Linguagens Prof.: Edilberto M. Silva http://www.edilms.eti.br Prof. Edilberto Silva / edilms.eti.br Definição Linguagens de programação são usadas para descrever

Leia mais

Laboratório de Programação 1 Algoritmos e a Lógica de Programação

Laboratório de Programação 1 Algoritmos e a Lógica de Programação Laboratório de Programação 1 Algoritmos e a Lógica de Programação Mário Hozano [email protected] Ciência da Computação UFAL - Arapiraca Relembrando a aula anterior... O que é um algoritmo? Como é o

Leia mais

Linguagens de Programação. Introdução. Carlos Bazilio

Linguagens de Programação. Introdução. Carlos Bazilio Linguagens de Programação Introdução Carlos Bazilio [email protected] http://www.ic.uff.br/~bazilio/cursos/lp ??? Pascal aux := 0 for i:=1 to 10 do aux := aux + i 10: i = 1 20: if i > 10 goto 60

Leia mais

Olá pessoal, Hoje vamos entender os conceitos sobre linguagem de programação. Definição, tipos de linguagens e as linguagens mais utilizadas

Olá pessoal, Hoje vamos entender os conceitos sobre linguagem de programação. Definição, tipos de linguagens e as linguagens mais utilizadas Olá pessoal, Hoje vamos entender os conceitos sobre linguagem de programação. Definição, tipos de linguagens e as linguagens mais utilizadas atualmente. Uma linguagem de programação é um conjunto padronizado

Leia mais

Ederson 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 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 mais

Noçõ linguagem Java. Profs. Marcel Hugo e Jomi Fred Hübner. Departamento de Sistemas e Computação Universidade Regional de Blumenau - FURB

Noçõ linguagem Java. Profs. Marcel Hugo e Jomi Fred Hübner. Departamento de Sistemas e Computação Universidade Regional de Blumenau - FURB Noçõ ções básicas b da linguagem Java Profs. Marcel Hugo e Jomi Fred Hübner Departamento de Sistemas e Computação Universidade Regional de Blumenau - FURB Introduçã ção Origem Funcionamento Vantagens Linguagem

Leia mais

Linguagens de Programação Classificação

Linguagens de Programação Classificação Classificação Classificação A proximidade que a linguagem de programação tem com a humana determina sua classe (o nível): Linguagem de máquina (primeira geração) Linguagem assembly - de montagem (segunda

Leia mais

Linguagens de Programação Funcional

Linguagens 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 mais

MCTA028 Programação Estruturada Aula 01: - Introdução à linguagem C - Teste de avaliação

MCTA028 Programação Estruturada Aula 01: - Introdução à linguagem C - Teste de avaliação MCTA028 Programação Estruturada Aula 01: - Introdução à linguagem C - Teste de avaliação Prof. João Henrique Kleinschmidt Material elaborado pelo Prof. Jesús P. Mena-Chalco 3Q-2018 Linguagens de programação

Leia mais

Informática I. Aula 19. http://www.ic.uff.br/~bianca/informatica1/ Aula 19-20/06/06 1

Informática I. Aula 19. http://www.ic.uff.br/~bianca/informatica1/ Aula 19-20/06/06 1 Informática I Aula 19 http://www.ic.uff.br/~bianca/informatica1/ Aula 19-20/06/06 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação

Leia mais

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS Docente: Éberton da Silva Marinho e-mail: [email protected] [email protected]

Leia mais

Paradigmas de Linguagem de Programação. Aspectos Básicos

Paradigmas 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 mais

LISP - Introdução. Existem vários dialectos de LISP: COMMON LISP (o mais sofisticado e mais utilizado) Outros: MAC LISP, INTERLISP, XLISP

LISP - Introdução. Existem vários dialectos de LISP: COMMON LISP (o mais sofisticado e mais utilizado) Outros: MAC LISP, INTERLISP, XLISP LISP - Introdução Linguagem de alto nível, criada por John McCarty em 1959, tendo em vista facilitar a programação de sistemas de raciocínio baseados em lógica Foi adoptada como linguagem principal em

Leia mais

Introdução à Linguagem C++

Introdução à Linguagem C++ Introdução à Linguagem C++ C++: Definição C++ C A Linguagem de Programação C++ pode ser definida como uma extensão da Linguagem C; Todo código de programação em Linguagem C pode a priori ser compilado

Leia mais

Programação de Computadores:

Programaçã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 [email protected] - http://lmarti.com Seis Camadas Problema

Leia mais

Organização de Computadores

Organização de Computadores Organização de Computadores Professor Marcus Vinícius Midena Ramos Colegiado de Engenharia de Computação (74)3614.1936 [email protected] www.univasf.edu.br/~marcus.ramos Computador Ferramenta

Leia mais

Fluxogramas e variáveis

Fluxogramas e variáveis Fluxogramas e variáveis Patrícia de Siqueira Ramos UNIFAL-MG, campus Varginha 11 de Março de 2019 Patrícia de Siqueira Ramos Fundamentos da programação 1 / 20 Fases de um algoritmo Patrícia de Siqueira

Leia mais

Métodos de implementação de linguagens. Kellen Pinagé

Mé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 mais

Algoritmos e Programação

Algoritmos e Programação Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Parte 04 Prof. Jorge Cavalcanti [email protected] www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav

Leia mais

Expressões e sentença de atribuição

Expressões e sentença de atribuição Expressões e sentença de atribuição 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 mais

Questõ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õ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 mais

Introdução à Programação Funcional

Introduçã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 mais

Paradigmas de Linguagens de Programação. Expressões e Instruções de Atribuição

Paradigmas de Linguagens de Programação. Expressões e Instruções de Atribuição Expressões e Instruções de Atribuição Cristiano Lehrer Introdução Expressões são o meio fundamental de especificar computações em uma linguagem de programação: Familiarização com as ordens de avaliação

Leia mais

Paradigmas. Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I

Paradigmas. Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I Paradigmas Paradigmas Tradicional Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I Paradigmas Tradicional Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I OO Simula-67, Smalltalk, C++, Eiffel, Object Pascal,

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA ELÉTRICA

Leia mais

Nomes, vinculações e escopos

Nomes, 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 mais

LAPRO I. Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática - FACIN. Prof. Dr. Rafael Garibotti

LAPRO I. Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática - FACIN. Prof. Dr. Rafael Garibotti Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática - FACIN LAPRO I Prof. Dr. Rafael Garibotti v Baseado no material cedido pelos Profs. Dr. Marco Mangan e Dr. Matheus Trevisan

Leia mais

INFORMÁTICA: Informação automática

INFORMÁTICA: Informação automática INTRODUÇÃO INFORMÁTICA: Informação automática Definição: é a ciência que estuda o tratamento automático e racional da informação (encarregada pelo estudo e desenvolvimento de máquinas e métodos para processar

Leia mais

Conceitos de Linguagens de Programação

Conceitos 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 mais

Programação I Aula 2 Apresentação da linguagem Python

Programação I Aula 2 Apresentação da linguagem Python Programação I Aula 2 Apresentação da linguagem Python Pedro Vasconcelos DCC/FCUP 2017 Pedro Vasconcelos (DCC/FCUP) Programação I Aula 2 Apresentação da linguagem Python 2017 1 / 25 Nesta aula... 1 Porquê

Leia mais

As fases de um compilador

As fases de um compilador As fases de um compilador Compilando um programa simples estrutura de um compilador formas de organização de um compilador processo de execução de uma linguagem de alto-nível Compilando um programa simples

Leia mais

Fundamentos de Programação em Python

Fundamentos de Programação em Python Fundamentos de Programação em Python Diego Silveira Costa Nascimento Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte [email protected] 23 de junho de 2017 Ementa do

Leia mais

Introdução à Computação

Introdução à Computação UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Introdução à Computação Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa [email protected] Histórico da Computação Prof. Yandre

Leia mais

Estudos de Linguagens de Programação - Revisão

Estudos de Linguagens de Programação - Revisão Estudos de Linguagens de Programação - Revisão ([email protected]) O que é uma Linguagem de Programação? Linguagem usada por uma pessoa para expressar um processo através do qual um computador pode

Leia mais

Projeto de Linguagem. Linguagens de Programação

Projeto de Linguagem. Linguagens de Programação Projeto de Linguagem Renato Ferreira Linguagens de Programação Linguagens são adotadas para preencher uma demada Facilitar uma aplicação outrora difícil/impossível Independente da qualidade da linguagem

Leia mais

Programação de Computadores

Programaçã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 mais

Programação de Computadores

Programaçã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 mais

DELEGAÇÃO REGIONAL DO ALENTEJO CENTRO DE FORMAÇÃO PROFISSIONAL DE ÉVORA REFLEXÃO 5

DELEGAÇÃO REGIONAL DO ALENTEJO CENTRO DE FORMAÇÃO PROFISSIONAL DE ÉVORA REFLEXÃO 5 REFLEXÃO 5 Módulos 0782, 0783, 0784 e 0785 1/5 23-05-2013 Esta reflexão tem como objectivo partilhar e dar a conhecer o que aprendi nos módulos 0782 Programação em C/C++ - Estrutura Básica e Conceitos

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS Algoritmos e Programação

Leia mais

TÉCNICO DE INFORMÁTICA - SISTEMAS

TÉCNICO DE INFORMÁTICA - SISTEMAS 782 - Programação em C/C++ - estrutura básica e conceitos fundamentais Linguagens de programação Linguagem de programação são conjuntos de palavras formais, utilizadas na escrita de programas, para enunciar

Leia mais

Programação Python. Nesta aula... 1 Programação. 2 Python. Operadores e Operandos Variáveis, Expressões, Instruções Funções Ciclos Comentários

Programação Python. Nesta aula... 1 Programação. 2 Python. Operadores e Operandos Variáveis, Expressões, Instruções Funções Ciclos Comentários Nesta aula... 1 2 Introdução à - minor Ciência de computadores: incluí tópicos de matemática (linguagens formais para especificar ideias) engenharia (projetar, juntar componentes para formar um sistema,

Leia mais

Introdução à Programação de Computadores Parte I

Introdução à Programação de Computadores Parte I Introdução à Programação de Computadores Parte I Prof. Dr. Edson Pimentel Centro de Matemática, Computação e Cognição Objetivos Compreender os componentes básicos de um programa... Objetivos Bacharelado

Leia mais

Aula 1 Java Prof. Dr. Sylvio Barbon Junior

Aula 1 Java Prof. Dr. Sylvio Barbon Junior 5COP101 Linguagens de Programação Aula 1 Java Prof. Dr. Sylvio Barbon Junior Sylvio Barbon Jr [email protected] 1 Sumário 1) Razões para Estudar Conceitos de LP; 2) Domínios das Linguagens de Programação 3)

Leia mais

Programaçã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 SLIDES CEDIDOS POR BRUNO MARQUES 1 Programação de Computadores IV Introdução a Linguagens de Programação Simone Martins [email protected] SLIDES CEDIDOS POR BRUNO MARQUES 1 Arquitetura de programação 2 O Que é um Dado? Dado é o elemento

Leia mais

Revisão: linguagens de programação

Revisão: linguagens de programação Revisão: linguagens de programação Definição, histórico, paradigmas e semântica Prof. Thiago A. S. Pardo [email protected] Definição Uma linguagem de programação é uma linguagem destinada a ser usada

Leia mais

Material III-Bimestre Introdução e conceitos fundamentais da Linguagem C#

Material III-Bimestre Introdução e conceitos fundamentais da Linguagem C# Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina POO -2017 Material III-Bimestre Introdução e conceitos fundamentais da Linguagem C# http://www1.univap.br/~wagner Prof.

Leia mais

Noções de compilação

Noções de compilação Noções de compilação Compilador: o que é, para que serve e estrutura geral Parentes do compilador e programas correlatos Prof. Thiago A. S. Pardo 1 Compilação: por que estudar? (parte 1) Compiladores:

Leia mais

Capítulo 8. Estruturas de Controle no Nível de Sentença

Capítulo 8. Estruturas de Controle no Nível de Sentença Capítulo 8 Estruturas de Controle no Nível de Sentença Níveis de fluxo de controle Computações são realizadas por meio da avaliação de expressões e da atribuição dos valores a variáveis Para tornar a computação

Leia mais

Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte Lista de Exercícios para a Terceira Unidade

Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte Lista de Exercícios para a Terceira Unidade Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte Lista de Exercícios para a Terceira Unidade Disciplina: PEOO Professor: Eberton da Silva Marinho e-mail: [email protected] Data:

Leia mais

Quem sou eu? Daniel Coelho de Andrade. Graduando em Engenharia de Computação - UEFS. Membro da Empresa Júnior de Engenharia de Computação da UEFS

Quem sou eu? Daniel Coelho de Andrade. Graduando em Engenharia de Computação - UEFS. Membro da Empresa Júnior de Engenharia de Computação da UEFS Quem sou eu? Daniel Coelho de Andrade Graduando em Engenharia de Computação - UEFS Membro da Empresa Júnior de Engenharia de Computação da UEFS Ruby? Linguagem dinâmica Foco na simplicidade e produtividade

Leia mais

Sintaxe e Semântica. George Darmiton da Cunha Cavalcanti.

Sintaxe e Semântica. George Darmiton da Cunha Cavalcanti. Sintaxe e Semântica George Darmiton da Cunha Cavalcanti ([email protected]) Tópicos Introdução O problema de descrever a sintaxe Métodos formais para descrever a sintaxe Gramáticas de atributos Descrevendo

Leia mais

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza [email protected] http://docente.ifrn.edu.br/givanaldorocha Conceitos Lógica de Programação técnica de encadear pensamentos

Leia mais