Académique Documents
Professionnel Documents
Culture Documents
Utilizao de subprograma
(escrito na linguagem de mquina do computador hospedeiro).
Interpretao de um programa feita pela chamada do subprograma em uma seqncia apropriada. Mais precisamente, um interpretador um programa que executa repetidamente a seguinte seqncia: 1. Obter o prximo comando do programa. 2. Determinar que aes devem ser executadas. 3. Executar estas aes.
Compiladores (Definio)
Tradutores de cdigo em alto nvel para baixo nvel.
Programas escritos em linguagem de alto nvel so traduzidos em verses de linguagem de mquina Esta traduo feita em vrios passos:
Inicialmente traduzidos para cdigo Assembly (compilador) Depois ser traduzido para cdigo relocvel (objeto), em linguagem de mquina O programa inteiro carregado na memria principal, como cdigo executvel de mquina.
Processo Descritivo
Objetivos:
Introduzir conceitos e princpios fundamentais de linguagens de programao
elementos sintticos e semnticos caractersticas de projeto de linguagens tradutores de linguagens de programao ambientes de execuo
Motivao
porque estudar princpios e modelos de linguagens de programao?
Introduo a Linguagens de Programao
Modelos de linguagens
OP
Funcional OO
Lgico
A ES oferece suporte a LP
Ambientes integrados de desenvolvimento de software Gerao automtica de cdigos
Questes de projeto:
Qual a finalidade da LP? Uso geral? Uso especfico? Programao Internet? Qual a sua principal diferena em relao a outras LP existentes?
Questes de implementao:
Qual seu paradigma principal? Quais so suas razes? Linguagem nova? Extenso de linguagem existente? Como ser feito a traduo da linguagem? Plataforma de execuo homognea ou heterognea?
Linguagens imperativas
programao orientada a procedimentos programao orientadas a objetos
Linguagens concorrentes
programao paralela programao distribuda
Questes: - Suporte a mais de um paradigma? - Interoperabilidade?
Linguagens funcionais
programao funcional programao em lgica
Modelo imperativo Linguagens expressam seqncias de comandos que realizam transformaes sobre dados Base: mquina de von Neumann
orientadas a procedimentos orientadas a objetos
Seqencial Uma computao realizada aps o trmino da anterior Controle de fluxo de execuo interno ao programa:
seqncia seleo iterao invocaes
Sinttica: Uma linguagem de programao uma notao utilizada pelo programador para especificar aes a serem executadas por um computador Semntica: Uma linguagem de programao compreende um conjunto de conceitos que um programador usa para resolver problemas de programao
Aplicaes cientficas Aplicaes comerciais Inteligncia artificial Sistemas bsicos Aplicaes Internet
expressiva, eficiente, IDEs
portabilidade ...
GUIS,
expressiva, simples