Definición de Lenguaje interpretado (programación)
(Interpreted language). En programación, un lenguaje interpretado es un lenguaje de programación que necesita de un intérprete para implementar o ejecutar el código escrito en éste. Contrasta con los lenguajes compilados.
En teoría, cualquier lenguaje de programación puede ser tanto interpretado como compilado; la distinción entre lenguajes interpretados y lenguajes compilados es puramente una cuestión de práctica y conveniencia, y no por propiedades inherentes al lenguaje. De hecho, muchos lenguajes son implementados tanto por compiladores como por intérpretes (por ejemplo, Lisp, Basic, Python...).
También existen lenguajes que se "pre-compilan" en un lenguaje intermedio (llamado bytecode) que luego debe ser interpretado o compilado para ejecutarse.
Además, es importante tener en cuenta que los lenguajes interpretados suelen ser más flexibles y permiten una programación más dinámica. Esto se debe a que el intérprete ejecuta el código línea por línea, lo que permite realizar cambios en tiempo real y facilita la depuración de errores.
Por otro lado, los lenguajes compilados requieren una etapa previa de compilación en la que el código fuente se convierte en un archivo ejecutable específico para el sistema en el que se va a ejecutar. Esto implica que, una vez compilado, el código no puede ser modificado fácilmente y se necesita recompilarlo si se realizan cambios.
En cuanto a los lenguajes que se "pre-compilan" en un lenguaje intermedio, esto permite generar un código más eficiente y optimizado para su ejecución. El bytecode puede ser interpretado por una máquina virtual o compilado justo antes de su ejecución, lo que brinda un equilibrio entre la flexibilidad de los lenguajes interpretados y la eficiencia de los lenguajes compilados.
En resumen, la elección entre un lenguaje interpretado o compilado depende de los requerimientos del proyecto y las preferencias del programador. Los lenguajes interpretados ofrecen mayor flexibilidad y facilidad de depuración, mientras que los lenguajes compilados brindan mayor eficiencia y rendimiento en la ejecución del código. Los lenguajes que utilizan bytecode combinan características de ambos enfoques, buscando obtener lo mejor de ambos mundos.
Ventajas de los lenguajes interpretados
* Flexibilidad frente a los lenguajes compilados.
* Más facilidad para lograr independencia de plataformas (portabilidad).
* Tipado dinámico.
* Fácil debugging.
* Menor tamaño de programa.
La principal, desventaja es que los programas interpretados suelen ejecutarse más lentamente.
Algunos lenguajes usualmente interpretados
* ASP
* BASIC
* ECMAScript (ActionScript, DMDScript, E4X, JavaScript, JScript).
* Matemática: IDL, Maple, Mathematica, MATLAB
* Euphoria (interpretado o compilado).
* Inform
* Lisp, Scheme.
* Logo
* MUMPS (tradicionalmente interpretado, actualmente compilado).
* Ruby
* Smalltalk.
* Lenguajes de scripts.
* Tcl.
Lenguajes que suelen ser primero traducidos a un lenguaje intermedio, para luego ser interpretados o compilados:
* Java
* Lua
* Perl
* PHP
* Pike
* Python
* Visual FoxPro
Resumen: Lenguaje interpretado
Un lenguaje interpretado necesita un intérprete para ejecutar el código escrito en él, a diferencia de los lenguajes compilados. Algunos lenguajes pueden ser interpretados o compilados, depende de la práctica y conveniencia. Algunos lenguajes se "pre-compilan" en bytecode antes de ejecutarse.
¿Cuál es la diferencia entre un lenguaje interpretado y un lenguaje compilado?
Un lenguaje interpretado necesita de un intérprete para ejecutar el código escrito, mientras que un lenguaje compilado necesita ser compilado antes de poder ser ejecutado. En un lenguaje interpretado, el código se interpreta línea por línea durante la ejecución, lo que permite una mayor flexibilidad y facilidad de depuración, pero puede resultar en una ejecución más lenta en comparación con un lenguaje compilado.
¿Cuáles son las ventajas de utilizar un lenguaje interpretado?
Algunas ventajas de utilizar un lenguaje interpretado son la facilidad de aprendizaje y la facilidad de depuración. Debido a que el código se interpreta línea por línea, es más fácil identificar y corregir errores. Además, los lenguajes interpretados suelen tener una sintaxis más sencilla y flexible, lo que facilita la escritura y comprensión del código para los programadores novatos.
¿Cuáles son las desventajas de utilizar un lenguaje interpretado?
Una de las principales desventajas de utilizar un lenguaje interpretado es que tiende a ser más lento que un lenguaje compilado, ya que el código se interpreta durante la ejecución. Además, los programas escritos en lenguajes interpretados suelen requerir un intérprete instalado en la máquina del usuario, lo que puede complicar la distribución y ejecución del programa en diferentes dispositivos.
¿Cuáles son algunos ejemplos de lenguajes interpretados?
Algunos ejemplos de lenguajes interpretados son Python, JavaScript, Ruby y PHP. Estos lenguajes se utilizan ampliamente en el desarrollo web y la programación de scripts debido a su facilidad de uso y versatilidad.
¿Es posible compilar un lenguaje interpretado?
Sí, es posible compilar un lenguaje interpretado utilizando herramientas como compiladores just-in-time (JIT) que traducen el código interpretado en código de máquina durante la ejecución. Esto puede mejorar significativamente el rendimiento de los programas escritos en lenguajes interpretados.
¿Cuándo es recomendable utilizar un lenguaje interpretado?
Es recomendable utilizar un lenguaje interpretado cuando se necesita desarrollar programas rápidamente y se valora la facilidad de aprendizaje y depuración sobre el rendimiento. Los lenguajes interpretados son especialmente útiles en el desarrollo web y la programación de scripts, donde la rapidez de desarrollo y la flexibilidad son más importantes que la eficiencia en tiempo de ejecución.
Relacionados:
• Lenguaje compilado.
• Intérprete.
Autor: Leandro Alegsa
Actualizado: 26-06-2023
¿Cómo citar este artículo?
Alegsa, Leandro. (2023). Definición de Lenguaje interpretado. Recuperado de https://www.alegsa.com.ar/Dic/lenguaje_interpretado.php