Lua

Lenguaje de Programación Lua
Información sobre la plantilla
Lua.JPG
CreadorRoberto Ierusalimschy, Luiz Henrique de Figueiredo Waldemar Celes
LicenciaMIT



Lua. Lenguaje de programación imperativo, estructurado y bastante ligero que fue diseñado como un lenguaje interpretado con una semántica extendible. El nombre significa "luna" en portugués y gallego.

Lua fue diseñado para una programación procedimental general con utilidades para la descripción de datos. También ofrece un buen soporte para la programación orientada a objetos, programación funcional y programación orientada a datos. Se pretende que Lua sea usado como un lenguaje de script potente y ligero para cualquier programa que lo necesite. Lua está implementado como una biblioteca escrita en C limpio. Ha sido usado en muchas aplicaciones comerciales y no comerciales, cuyo número incrementa cada año.

Características

Lua es un lenguaje de extensión, suficientemente compacto para usarse en diferentes plataformas. En lua las variables no tienen tipo, sólo los datos y pueden ser lógicos, enteros, números de coma flotante o cadenas. Estructuras de datos como vectores, conjuntos, tablas hash, listas y registros pueden ser representadas utilizando la única estructura de datos de Lua: la tabla.

La semántica de Lua puede ser extendida y modificada redefiniendo funciones de las estructuras de datos utilizando metatablas. Lua ofrece soporte para funciones de orden superior, recolector de basura. Combinando todo lo anterior, es posible utilizar Lua en programación orientada a objetos.

Funcionamiento interno

Los programas en Lua no son interpretados directamente, sino compilados a código bytecode, que es ejecutado en la máquina virtual de Lua. El proceso de compilación es normalmente transparente al usuario y se realiza en tiempo de ejecución, pero puede hacerse con anticipación para aumentar el rendimiento y reducir el uso de la memoria al prescindir del compilador. También es posible la compilación en tiempo de ejecución utilizando LuaJIT.

Aplicaciones

  • En el gestor de ventanas Ion es posible utilizar Lua para personalizar la apariencia y extender su funcionalidad.
  • El gestor de ventanas awesome en su versión 3 utiliza Lua para su fichero de configuración.
  • Lenguages como ActionScript, Java, Lua y otros, son empleados en distintos sistemas operativos, lo cual consigue un ahorro de costes, al simplificar el trabajo de desarrollo de un nuevo programa de software, al añadirlos como partes "prefabricadas".
  • También es uno de los lenguajes de programación más utilizados para homebrews de la consola PSP de Sony debido a su sencillez. Van desde aplicaciones para añadir complementos u otros programas fácilmente a la consola a entornos de ventanas excelentes y videojuegos muy completos.
  • Se utilizan también para los productos de la compañía canadiense desarrolladora de software Indigo Rose, en AutoPlay Media Studio; estos programas no fueron desarrollados en Lua, sino que utilizan Lua para generar y crear scripts, ya sea por un asistente o por la pericia del programador.

Véase También


Fuentes

  • Artículo Lua para principiantes. Consultado el 24 de febrero del 2012. Disponible en:¨lua.gts-stolberg.de¨.