AULA1 1
•
•
•
•
•
•
Aplicações Científicas
Aplicações Comerciais
Inteligência Artificial
Programação de Sistemas
Linguagens de Scripting
Linguagens para Propósitos Especiais
Domínios de Programação
Aplicações Científicas
•
•
•
•
Estruturas de dados simples: matrizes
Operações aritméticas em ponto flutuante
FORTRAN, ALGOL 60
Nenhuma linguagem é significativamente melhor do que o FORTRAN até hoje
Domínios de Programação
Aplicações Comerciais
• Facilidade para produzir relatórios
• Exemplo: COBOL (60)
• Há pouco desenvolvimento nas linguagens de aplicação comercial, além do que foi feito para COBOL (usado ainda hoje)
Domínios de Programação
Inteligência Artificial
• Computações simbólicas, e não numéricas
• LISP
• PROLOG
Domínios de Programação
Programação de Sistemas
• Desenvolvimento de software básico
(sistemas operacionais)
• Linguagens para programação de sistemas exigem execução rápida
• PL/S (IBM), BLISS (Digital), Extended
ALGOL (Burroughs)
• Unix e C (poucas restrições de segurança)
Domínios de Programação
Linguagens de Scripting
• Script é uma lista de comandos em um arquivo, para serem executados “em lote”
• sh
• ksh (Bell Labs)
• awk (Aho, Wienberger e Kernighan)
• tcl
• Perl
Critérios de Avaliação de
Linguagens
•
•
•
•
Legibilidade
Facilidade de Escrita (“writability”)
Confiabilidade
Custo
Critérios de Avaliação de Linguagens
Legibilidade
• Simplicidade: poucos componentes básicos, cuidado com a multiplicidade de recursos, overloading inteligente de operadores
• Ortogonalidade: conjunto consistente de regras para combinar construções primitivas, com poucas exceções
• Instruções de controle
• Tipos e estruturas de dados
• Sintaxe
Critérios de Avaliação de Linguagens
Facilidade de escrita
• Simplicidade: grande número de construções diferentes leva a dificuldades para escrever programas
• Suporte para abstração: capacidade de definir estruturas/operações complexas ignorando detalhes.
Abrstração pode ser em dados