Um interpretador é um programa de computador que executa diretamente, instruções escritas em uma linguagem de programação ou script, sem antes compilá-los em um programa de linguagem de máquina. Um intérprete geralmente utiliza um dos seguintes estratégias para a execução do programa:
1- Analisar o código-fonte e executar o seu comportamento diretamente;
2- Traduzir o código-fonte em alguma representação intermediária eficiente;
3- Imediatamente executar este código pré-compilado explicitamente executar armazenados feito por um compilador que faz parte do sistema de intérprete.
Algumas aplicações de linguagem interpretada podemos citar:
1- Execução de linguagens de comando, uma vez que cada operador executado em linguagem de comando é geralmente uma invocação de uma rotina complexa, como um editor ou compilador;
2- Código de auto-modificação que pode ser facilmente implementado em uma linguagem interpretada. Isso se relaciona com as origens de interpretação em Lisp e pesquisa de inteligência artificial;
3- Código de máquina destinado a uma arquitetura de hardware pode ser executado em outro usando uma máquina virtual, que é essencialmente uma interpretação;
1- Depuração é mais simples;
2- Consomem menos memória;
3- Resultado imediato do programa ou rotina desenvolvida
Suas desvantagens:
1- A execução do programa é mais lenta;
2- Estrutura de dados demasiadamente simples;
3- Necessário fornecer o programa fonte ao utilizador.
Fontes:
http://www.inf.ufsc.br/~j.barreto/cca/arquitet/arq4.htm
https://www.oficinadanet.com.br/artigo/1527/diferencas_entre_compiladores_e_interpretadores
https://pt.wikipedia.org/wiki/Interpretador
Muito bom saber! É graças a simplicidade e portabilidade do interpretador que linguagens de programação como Python conseguiram ser tão populares.
ResponderExcluirBem explicativo!
ResponderExcluir