54
Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Linguagens de Programação

Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Embed Size (px)

Citation preview

Page 1: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica e

Influências das Principais Linguagens de Programação

Karane Mariano Vieira – 2003.1Modificações: Virgínia Brilhante

Linguagens de Programação

Page 2: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

A Linha Cronológica

ALGOL

LISP

FORTRAN I/II/IV

BASIC

SIMULAC

PASCAL

MODULA 2

SMALLTALK

C++

FORTRAN 77

MODULA-3

JAVA

PostScript

HTML

TeX/LaTeX

PHP

PerlXML

Delphi(89)

1950 1980 20001960 1970 1990

PLANKALKÜLCOBOL

PL/I

PROLOG

ADA

Python

ASSEMBLY

APL

Scheme COMMON LISP

ClipperJavaScript

SQL

Eiffel

PDF

Snobol

Page 3: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

PLANKALKÜL - 1945 Criada por Konrad Zuse; Nunca implementada; Estruturas de dados avançadas:

reais, arrays, records.

Page 4: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

FORTRAN The IBM Mathematical FORmula TRANslating

System: FORTRAN por John Backus, 1954 Projetado para o IBM 704 Ambiente de desenvolvimento: Computadores eram pequenos e não

confiáveis Aplicações eram científicas Sem metodologia ou ferramentas de

programação

Page 5: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

FORTRAN I - 1957 Primeira versão implementada do FORTRAN I/O formatado Nomes poderiam ter até 6 caracteres Subprogramas definidos pelo usuário Comando de seleção de três modos (IF

aritmético) Loop de contagem pos-testado (DO)

Page 6: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

FORTRAN I – 1957 (Cont) Compilador lançado em abril de 1957,

depois de 18 homens-ano de esforço. Programas maiores que 400 linhas

raramente compilavam corretamente, principalmente devido à baixa confiabilidade do 704

Código era muito rápido Rapidamente tornou-se popular

Page 7: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

FORTRAN II - 1958 Corrigiu vários “bugs” do Fortran I Compilação independente de

subrotinas 50% do código escrito pro 704 era

FORTRAN

Page 8: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

FORTRAN IV - 1960-62 FORTRAN III nunca largamente

distribuído Declaração de tipos explícita Comando de seleção lógica Nomes de subprogramas podiam

ser parâmetros Padrão ANSI em 1966

Page 9: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

FORTRAN 77 - 1978 Manuseio de character string Comando de controle de loop

lógico Comando IF-THEN-ELSE

Page 10: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

FORTRAN 90 - 1990 Funções builtin para operações c/arrays Arrays dinâmicos Ponteiros Tipo registro Recursão Novas estruturas de controle ex: CASE Checagem de tipo de parâmetro Módulos

Page 11: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

EXEMPLO DE PROGRAMA EM FORTRAN 90SUM

DO 10 COUNTER = 1 LIST_LEN READ *, INTLIST(COUNTER) SUM = SUM + INTLIST(COUNTER)

CONTINUE COMPUTE THE AVERAGE

AVERAGE = SUM/LIST_LEN COUNT THE VALUES THAT ARE GREATER THAN THE AVERAGE

DO 20 COUNTER = 1, LIST_LEN IE (INTLIST(COUNTER) .GT. AVERAGE) THEN

RESULT = RESULT + 1 END IF

CONTINUE

Page 12: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Autor do FORTRAN

John Backus

Page 13: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

LISP - 1959 Características: Somente dois tipos de dados: átomos e listas Sintaxe baseada no lambda calculus Pioneira da programação funcional

Não necessita variáveis ou atribuição Controle via recursão e expressões condicionais

Paradigma alternativo ao modelo imperativo Ainda uma das linguagens dominantes em IA

Page 14: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Exemplo de Função em LISP; Função LISP que pega duas lsitas como argumentos e; retorna True se as duas listas forrem iguais, e NIL (falso)

caso; contrário.

(DEFUN equal (lis1 lis2)) (COND

( (ATOM lis1) (EQ lis1 lis2)) ( (ATOM lis2) NIL)

( (equal (CAR lis1) (CAR lis2)) (equal (CDR lis1) (CDR lis2)))

( T NIL) ))

Page 15: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

ALGOL 58 - 1958Características da linguagem: Conceito de tipo foi formalizado Nomes podiam ter qualquer tamanho Arrays podiam ter um número qualquer de índices Parâmetros eram separados por modo

(entrada/saída) Índices eram colocados entre colchetes Comandos de composição de blocos (begin ...

end) Ponto e vírgula como separador de comandos Operador de atribuição era := IF possuía uma cláusula ELSE-IF

Page 16: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

ALGOL 60 - 1960 Modificou o ALGOL 58 durante um

encontro de 6 dias em Paris Novas características: Estrutura de blocos (escopo local) Dois modos de passagem de parâmetros

Subprogramas recursivos Arrays em pilhas dinâmicas

Ainda nenhum I/O nem manuseio de strings

Page 17: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

ALGOL 60 – 1960 (Cont)Sucessos: Foi o padrão para publicação de

algoritmos por mais de 20 anos Todas as linguagens imperativas são

baseadas nela Primeira linguagem independente de

máquina Primeira linguagem cuja sintaxe foi

definida formalmente (BNF)

Page 18: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

ALGOL 60 – 1960 (Cont)Falha: Nunca foi amplamente utilizada,

especialmente nos EUA Motivos:

Nenhum I/O e o conjunto de caracteres faziam com que os programas não fossem muito portáveis

Muito flexível, portanto difícil de implementar

Falta de apoio da IBM

Page 19: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Exemplo de programa em ALGOL 60begin integer array intlist [1:99]; integer listlen, counter, sum, average, result; sum := 0; result := 0; readint(listlen); if (listlen > 0) L (listlen < 100) then begin comment Read input into an array and compute the average;

for counter := 1 step 1 until listlen do begin

readint( intlist[counter]); sum := sum + intlist [counter];

end;

Page 20: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

ALGOL 68 - 1968 A partir do desenvolvimento do ALGOL 60, mas

não é um superconjunto daquela linguagem Projeto é baseado no conceito de

ortogonalidade Fonte de várias idéias adotadas por outras

linguagens Contribuições: Estruturas de dados definidos pelo usuário Referência de tipos Arrays dinâmicos (chamados flex arrays)

Page 21: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

SIMULA 67 - 1967 Baseada no SIMULA I, criada por Kristen

Nygaard e OleJohan Dahal, entre 1962 e 1964 na Noruega

Projetada inicialmente para simulação de sistemas

Baseada no ALGOL 60 e SIMULA I Contribuições: Corotinas um tipo de subprograma que pode

ser reiniciado a partir do ponto onde previamente havia parado

POO

Page 22: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Autores do SIMULA

Nygaard

Dahal

Page 23: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

COBOL - 1960Objetivos do projeto: Deve parecer com inglês simples Deve ser fácil de usar, mesmo que

signifique menos recursos (poder) Deve estender a base de usuários de

computadores Não deve ser influenciado por problemas

implementação (compiladores)

Page 24: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

COBOL - 1960Problemas de projeto: expressões aritméticas? indexação? brigas entre fabricantes Contribuições: Primeiro recurso macro em uma linguagem de

alto nível Estruturas de dados hierárquicas (registros) Comandos de seleção aninhados Nomes longos (até 30 caracteres), com hífens Data Division

Page 25: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Exemplo de programa em COBOLIDENTIFICATION DIVISION PROGRAMID. PRODUCEREORDERLISTING. ENVIRONMENT DIVISION. CONFIGURATION SECTION.SOURCE CONPUTER. DECVAX. OBJECT CONPUTER. DECVAX. INPUTOUTPUT SECTION. FILECONTROL. SELECT BALFWDFILE ASSIGN TO READER. SELECT REORDERLISTING ASSIGN TO LOCALPRINTER. DATA DIVISION. FILE SECTION. FD BALFWDFILE

Page 26: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

PL/I - 1965 Projetado pela IBM e SHARE Incluia o que era considerado o melhor do: ALGOL 60:

recursão estrutura de blocos

FORTRAN IV compilação em separado comunicação por dados globais

COBOL 60 estrutura de dados I/O facilidades para geração de relatórios

Page 27: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

PL/I – 1965 (Cont)Comentários: Muitas características novas tinham problemas de

projeto Muito grande e complexo Foi de fato usado para aplicações científicas e

comerciais Um sucesso parcial Contribuições: Primeiro tratamento de exceção (23 tipos) Tipo de dado ponteiro Referência a seções de arrrays Etc.

Page 28: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

EXEMPLO DE PROGRAMA EM PL/IPLIEX; PROCEDURE OPTIONS (MAIN); DECLARE INTLIST (1:99) FIXED. DECLARE (LISTLEN, COUNTER, SUM, AVERAGE, RESULT) FIXED; SOM = 0; RESULT = 0; GET LIST (LISTLEN). IF (LISTLEN > 0) & (LISTLEN < 100) THEN

DO; /* READ INPUT DATA INTO AN ARRAY AND COMPUTE THE SUM */

DO COUNTER = 1 TO LISTLEN; GET LIST (INTLIST (COUNTER)); SUM = SUM + INTLIST (COUNTER);

END; /* COMPUTE THE AVERAGE */

AVERAGE = SUM / LISTLEN;

Page 29: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Pascal - 1971 Criada por Niklaus Wirth Baseada no ALGOL W, proposta alternativa

apresentada pelos que consideraram muito complexa tanto a linguagem quanto a metalinguagem do ALGOL68

Simplicidade e tamanho reduzido eram objetivos de projeto

Projetada para o ensino de programação estruturada

Ainda é a uma das mais usadas linguagens para o ensino de programação estruturada nas universidades

Page 30: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Exemplo de programa em Pascal program pasex (input, output);

type intlisttype = array[1..99] of integer; var

intlist :intlisttype; listlen, counter, sum, average, result: integer;

begin result := 0; sum := 0; readln(listlen); if ((listlen > 0) and (listlen < 100) then begin {read input into an array and compute the sum }

for counter := 1 to listlen do begin

readln(intlist[counter]); sum := sum + intlist[counter];

end;

Page 31: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Autor do Pascal

Niklaus Wirth

Page 32: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

BASIC - 1964 Criada por Kemeny & Kurtz em Dartmouth Objetivos de Projeto: Fácil de aprender e usar (por outros que não fossem

estudantes de ciências) Deve ser “agradável e amigável” Rápido de usar em trabalhos domésticos Acesso livre e particular Tempo do usuário mais importante que tempo de

máquina Versão inicial era compilada, s/ entrada pelo terminal Simples (14 tipos de comandos e 1 tipo de dados) Dialetos populares atuais: QuickBASIC e Visual BASIC

Page 33: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Exemplo de programa em QUICKBASIC DIM intlist(99) result = O sum = O INPUT listlen IF listlen > O AND listlen < 100 THEN REM Read input into an array and compute the

sum FOR counter = 1 TO listlen

INPUT intlist(counter) sum = sum + intlist(counter>

Page 34: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Autores do BASIC

Page 35: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Modula 2 Criada entre 1975 76 por Niklaus

Wirth na ETH; Recursos do Pascal mais módulos,

suportando tipos abstratos de dados, procedimentos como tipos e características de baixo nível projetadas para programação de sistemas.

Page 36: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Modula 3 Criada no final dos anos 80 por Systems

Research Center (Digital) e Olivetti Research Center;

Baseada no Modula 2, Mesa, Cedar e Modula 2+;

Adiciona ao Modula 2: POO; Tratamento de exceção; Garbage collection; Concorrência.

Page 37: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Delphi (Borland) Lançado em 1995 Pascal mais características de

suporte a POO Mais elegante e seguro que C++ A linguagem é Object Pascal,

projetada anos antes

Page 38: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

C - 1972 Projetada para a programação de

sistemas (nos Lab. Bell por Dennis Richie)

Ancestrais incluem CPL, BCPL, B e ALGOL68

Operadores poderosos, checagem de tipos pobre

(Inicialmente?) propagada através do UNIX

Page 39: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Exemplo de programa em C void main() { int intlist[98], listlen, counter, sum, average, result; sum = 0; result = 0; scanf(``%d'', &listlen);

if ((listlen > 0) && (listlen < 100) { /* read input into an array and compute the sum */ for (counter = 0; counter < listlen, counter++) { scanf(``%d'', &intlist[counter]); sum = sum + intlist[counter]; }

Page 40: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Autor do C

Dennis Richie

Page 41: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Prolog - 1972 Desenvolvido na Universidade de

AixMarseille, por Comerauer e Roussel, com ajuda de Kowalski da Universidade de Edinburgh

Basedo na lógica formal Não procedural Comparativamente poderia ser definida

como: um sistema de banco de dados inteligente que usa processos de inferência para inferir a verdade de expressões fornecidas

Page 42: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Exemplo de programa em Prologvel_max(ford,100). vel_max(chevy,105). vel_max(dodge,95). vel_max(volvo,80). tempo(ford,20). tempo(chevy,21). tempo(dodge,24). tempo(volvo,24). distancia(X,Y) :- vel_max(X,Velocidade),

tempo(X,Tempo), Y is Velocidade * Tempo.

Page 43: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Ada - 1983 Contribuições: Suporte para abstração de dados Facilidades para tratamento de exceções Unidades de programa genéricas: versões instanciadas

geradas pelo compilador de acordo com tipos de dados específicos

Suporte à execução concorrente de unidades de programa Comentários: Projeto via contrato competitivo Incluiu tudo que se conhecia sobre engenharia de software

e projeto de linguagens Não confiável por causa da alta complexidade Compiladores de difícil construção. Primeiro compilador

operacional surgiu 4 anos depois que o projeto da linguagem tinha sido completado

Page 44: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Ada 95 - 1988 Facilidades para interface gráfica Suporte para POO Mecanismos de controle para dados

compartilhados

Apesar de tão completa, Ada só foi largamente utilizada pela organização que promoveu seu desenvolvimento: o DoD do governo americano.

Page 45: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Exemplo de programa em ADA with TEXT_IO; use TEXT_IO; procedure ADA_EX is

package INT_IO is new INTEGER_IO (INTEGER); use INT_IO; type INT_LIST_TYPE is array (1..99) of INTEGER; INT_LIST : INT_LIST_TYPE; LIST_LEN, SUM, AVERAGE, RESULT: INTEGER; begin RESULT := 0; SUM := 0; GET (LIST_LEN);

Page 46: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Smalltalk – 1972-1980 Desenvolvida pela Xerox PARC,

inicialmente por Alan Kay, depois por Adele Goldberg

Primeira implementação completa de uma linguagem orientada por objetos (abstração de dados, herança e binding de tipos dinâmico)

Pioneira no tipo de interface gráfica que hoje todos utilizam

Page 47: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Exemplo de programa em Smalltalkclass name Polygon superclass Object instance variable name ourPen

numSides sideLenght

“Class methods”“Create an instance”

new ^ super new getPen

“Get a pen for drawing polygons”getPen

Page 48: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Autores do SmallTalk

Alan Kay

Adele Goldberg

Page 49: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

C++ - 1985 Desenvolvida nos Lab. Bell por Stroustrup Baseada no C and SIMULA 67: facilidades para

POO do SIMULA 67 adicionadas ao C Possui tratamento de exceção Linguagem grande e complexa, em parte por

suportar programação procedural e orientada por objetos

Popularizou-se rapidamente, junto com POO Padrão ANSI aprovado em novembro de 97

Page 50: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Autor do C++

Stroustrup

Page 51: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Java - 1995 Desenvolvida pela Sun no começo dos

anos 90 Baseada no C++ Significantemente simplificada Suporta apenas POO Tem referências, mas não ponteiros Inclui suporte a applets e concorrência

Page 52: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Outras Linguagens• ML(1973) – Meta Language. Linguagem de programação funcional. Versão mais recente é o SML/NJ. • Clipper(1984) – Linguagem de desenvolvimento de banco de dados para DOS.• PHP(1995) - Linguagem script para o desenvolvimento de aplicações Web; embutível dentro do HTML. • JavaScript(1995) – Linguagem script para aplicações executadas em Web browsers.• HTML – Hipertext Markup Language, script para formatação de hipertextos. • ASP – Active Server Page. Linguagem script para construção de páginas dinâmicas.

Page 53: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Outras Linguagens• TeX/LaTeX(1985) – Linguagem para formatação de

textos científicos.• PostScript(1982) – Linguagem de formatação de textos

para visualização.• PDF – Portable Document Format. Linguagem de

formatação de textos para visualização.• XML – Extensible Markup Language. Usado para

estruturação do conteúdo de páginas HTML.• Perl(1987) – Linguagem script com facilidades para

manipulação de texto.

Page 54: Linha Cronológica e Influências das Principais Linguagens de Programação Karane Mariano Vieira – 2003.1 Modificações: Virgínia Brilhante Linguagens de

Linha Cronológica

Outras Linguagens• SQL – Structured Query Language. Padrão para

operações em bancos de dads relacionais. • PYTHON(1991) – Linguagem interpretada, orientada a

objetos similar ao Perl.• Etc.