Evolução das
Principais
Linguagens
de Programação
Marcelo Marinho
([email protected])
Histórico
 Linguagens
que
introduziram
conceitos
importantes e que ainda estão em uso:
 1955 - 1965
 FORTRAN (FORmula TRANslation)
 COBOL (COmmon Business Oriented Language)
 ALGOL 60 (ALGorithmic Oriented Language)
 LISP (LISt Processing)
 APL (A Programming Language)
 BASIC
(Beginners
All-purpose
Symbolic
Instruction Code
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 1965 – 1971 (LP's
baseadas em
ALGOL)
 PL/I (Programming
 Language I)
 SIMULA 67
 ALGOL 68
 PASCAL
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
 Linguagens dos
anos 80
 PROLOG
 (PROgramming in
 LOGic)
 SMALL TALK
C
 MODULA 2
 ADA
 Java
Histórico
 FORTRAN (FORmula TRANslation)
 Desenvolvida em 1956 por John Backus (Univ. Stanford);
 1a LP de alto nível;
 Resolução de problemas científicos;
 Ainda usada no meio técnico-científico;
 Inicialmente para o IBM 704, hoje existem diversas versões;
 Vasta biblioteca de rotinas (redução de custo e tempo).
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 Contribuições de FORTRAN:
 Variáveis;
 Comando de atribuição;
 Conceito de tipos;
 Modularidade (subprogramas);
 E/S formatadas.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 COBOL (Common Business Oriented
Language)

Desenvolvida em 1959 pelo Departamento de Defesa dos EUA e
fabricantes de computadores;


Se tornou uma linguagem padrão para aplicações comerciais;
Desenvolvimento independente de máquina.
 Contribuições:


Código mais legível (“English-like”);
Estrutura de Dados Heterogênea
Registro (record)
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 ALGOL 60 (ALGorithmic Oriented Language)
 Origem européia (1958);
 1ª linguagem estruturada;
 Resolução de problemas científicos;
 Influenciou quase todas as suas sucessoras;
 Pouco usada comercialmente, pois não tem
facilidades de E/S;
 Tornou-se padrão para a publicação de algoritmos.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 Contribuições do ALGOL 60:
 Estrutura de blocos
 Escopo de variáveis e influência de
comandos de controle
 Comandos de controle estruturados
 if-then-else
 Recursividade.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 LISP (LISt Processing)
 Criada em 1960, por John McCartly (IA/MIT);
 1ª linguagem funcional;
 Criada para pesquisa em IA;
 Muitos dialetos (linguagem não padronizada);
 Padrão informal: Common LISP, 1981.
 Contribuições
 Pioneira na computação simbólica ou nãonumérica.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 APL (A Programming Language)
 Desenvolvida em 1960 por Kenneth Iverson (IBM);
 Utiliza notação matemática com operadores
poderosos;
 Difícil implementação;
 Notação compacta para aplicações matemáticas;
 Modelo funcional (sua principal estrutura é o array).
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 BASIC (Beginners All-purpose Symbolic
Instruction Code)
 Desenvolvida em 1965 por John Kemeny e
 Thomas Kurtz (Dartmouth College);
 LP de fácil aprendizado;
 Com o surgimento dos microcomputadores (70)
tornou-se muito popular;
 Não contribuiu muito tecnologicamente.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 Contribuições do BASIC:
 Ofereceu ambiente de programação interativo.
 Programa BASIC: seqüência de instruções que são
executadas na ordem em que são descritas a
menos que um desvio seja indicado.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 PL/I (Programming Language I)
 Desenvolvida em meados da década de 60 pela
IBM;
 Objetivo: incluir as características das LPs
existentes numa única linguagem de propósito
geral:
 Estrutura de bloco, de controle e recursividade (do ALGOL 60);
 Subprogramas e E/S formatadas (FORTRAN);
 Manipulação de arquivos e registros (COBOL);
 Alocação dinâmica de memória e estruturas encadeadas (LISP);
 Operações com arrays (APL);
 Linguagem complexa de difícil aprendizado.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 Contribuições de PL/I:
 Tratamento de interrupção;
 Multitarefa (concorrência).
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 SIMULA 67
 Baseada em ALGOL 60;
 Criada em 1967 por Ole
Johan Dahl e Kristan
Nygaard, na Noruega;
 Propósitos: descrição de sistemas e simulações.
 Contribuições:
 Conceito
de classe: encapsulamento de dados e
procedimentos. Predecessor às classes das
linguagens orientadas a objeto.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 ALGOL 68
 Muito diferente de ALGOL 60;
 LP de propósito geral;
 Projetada para a comunicação de algoritmos e para execução

em vários computadores;
Sua difícil descrição resultou em baixa popularidade.
 Contribuições:
 Ortogonalidade:
número de construtores básicos e um
conjunto de regras para combiná-los relativamente pequeno.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 PASCAL
 Criada por Niklaus Wirth, em 1969;
 Linguagem de fácil aprendizado e implementação;
 Suporta programação estruturada;
 Adequada para o ensino de programação;
 Influenciou quase todas as linguagens mais
recentes.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 Contribuições de Pascal:
 Estruturas de controle flexíveis;
 Tipos definidos pelo usuário;
 Arquivos;
 Registros (Records);
 Conjuntos.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 PROLOG (PROgramming in LOGic)
 Desenvolvida em 1972, em Marseille
(França);
 Para aplicações de IA;
 Baseada em lógica formal;
 1ª linguagem Lógica.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 SMALL TALK
 Criada por Alan Kay da XEROX (Palo Alto – EUA),
no início dos anos 1970;
 Possui ambiente de programação com menus
pop-up, windows (janelas) e mouse;
 Paradigma Orientado a Objetos;
 Conceito de classe do SIMULA 67 mais herança e
instanciação.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 Contribuições de SMALL TALK :
 1ª
linguagem a utilizar o paradigma de
programação OO;
 Introduz o conceito de LP extensível
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
C
Criada por Dennis Ritchie, nos laboratórios AT&TBell, em 1972;
Padronizada pelo comitê ANSI-C em 1983;
Linguagem de alto nível com facilidades para a
programação em baixo nível;
Gera código executável eficiente;
Alta portabilidade;
Grande conjunto de operadores.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 MÓDULA 2
 Criada por Niklaus Wirth no final dos anos 70;
 Linguagem de propósito geral;
 Baseada em melhorias no PASCAL;
 Desenvolvimento de software de grande porte;
 Também usada para ensinar programação.
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 ADA







Criada no início dos anos 70, pelo Departamento de Defesa dos EUA;
Baseada em Pascal;
Padronizada em 1983;
Utiliza o conceito de classes do SIMULA 67;
Tratamento de exceções de PL/I;
Facilidades para o processamento concorrente;
Para aplicações:




Numéricas;
Que envolvem concorrência;
Que envolvem tempo real;
Seu nome é uma homenagem à ADA Augusta, 1ª programadora (século 19).
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Histórico
 C++



Desenvolvida em 1983 (AT&T);

Quem sabe programar em C conhece a maior parte de C++;
Linguagem Orientada a Objetos;
Formadas pela linguagem C adicionada de um conjunto de
instruções voltados à OO;
 JAVA





Desenvolvida em 1994 pela Sun Microsystems;
Linguagem Orientada a Objetos;
Conta com recursos para programação distribuída;
Sintaxe parecida com C++;
Linguagem híbrida muito utilizada na Internet
Estudo de Linguagens de Programação - Prof.
Marcelo Marinho
Download

Engenharia de Software (IF570)