Want to create interactive content? It’s easy in Genially!
Lenguaje de programacion Lua
Sharpo12
Created on November 7, 2023
Start designing with a free template
Discover more than 1500 professional designs like these:
Transcript
Lua
Lenguaje de programacion
cristopher segura caldelas
Angel gabriel chavoya palacios
David Dario Nuñez Favela
Edgar Alexis sanchez abundiz
Lua
Historia y origen
Lua fue creado en 1993 por Roberto Lerusalimschy, Luis Enrique de figuerido y waldemar Celes, miembros del grupo de tecnologia en coputacion grafica (Tecgraf) en la pontificia univerisdad catolica de Rio de Janeiro, Basandose en una estructura simular a C y Perl.
Caracteristicas delua
Lenguaje multiparadigmas
Lua es un lenguaje multiparadigma porque su semantica puede ser extendida y modificada redefiniendo funciones de las estructuras de datos utilizando metatablas, casi como en perl. Lua ofrece soporte para funciones de orde superior, recolector de basura. Combinando todo lo anterior, es posible utilizar Lua en programacion orientada a objetos.
Lenguaje de extension
Esto quiere decir que por sí mismo no puede ejecutarse, más bien se debe incluir dentro de otro programa que lo use.
Lenguaje interpretado
Esto quiere decir que no se produce un archivo ejecutable a partir de Lua, sino que sus instrucciones se ejecutan a través de otro programa. Este otro programa se conoce, en general, como un intérprete.
Lua tiene manejo de memoria automático
Esto significa que el programador no debe preocuparse por liberar la memoria RAM que su programa ya no está usando
Lua es portable
Es decir que Lua puede funcionar en diversidad de sistemas operativos y dispositivos. Por ejemplo, computadores de escritorio con Windows, Mac o Linux y dispositivos móviles con Android, iOs o Windows Phone, entre otros.
Lua es libre
Lua es libre en el sentido del software libre, puedes ver y modificar su código.
Ventajas al programar en lua
Velocidad
Al ser directo y ligero se ejecuta de forma veloz siendo consideradoconsiderado como el lenguaje de secuencias de comandos interpretados (scripts) más rápido.
Gratuito
Distribuido bajo licencia MIT, es open source y es posible utilizarlo para cualquier finalidad, también usos comerciales.
No presenta limites
No presenta limites para los desarrolladores por lo que pueden hacer cualquier cosa que imaginen con un lenguaje facil de utilizar y aprender.
Facil de aprender
Este lenguaje de programacion esta hecho de tal manera que incluso niños son capaces de aprenderlo por lo que es uno de los lenguajes de programacion mas recomendables para empezar en la programacion.
Juegos que utilizan Lua
Garrys mod
Fue creado el 25 de diciembre de 2004 por Garry Newman, consistiendo simplemente de un nivel jugable y una pistola que lanzaba "Manhacks (Robosierras)", enemigos del juego Half-Life 2.
El modo de juego base de Garry's Mod no tiene objetivos establecidos y proporciona al jugador un mundo multijugador en el que manipular objetos libremente.
Otros modos de juego, en particular Trouble in Terrorist Town, son creados por otros desarrolladores como mods y se instalan por separado, por medio de Steam Workshop.
Multi Theft Auto:San Andreas
Multi Theft Auto (MTA) es una modificación para el videojuego Grand Theft Auto: San Andreas que añade funcionalidades multijugador en línea.
La utilidad de esta expansión o modificación del juego original es para la conexión e interacción de jugadores en múltiples canales públicos y privados. Esta expansión usa más recursos que la competencia ya que consta de un sistema script más refinado y complejo, que además es de código abierto.
Bibliotecas de lua
Biblioteca de depuracion
Esta biblioteca proporciona a los programas en Lua las funcionalidades de la interface de depuración. Se debe usar con cuidado. Las funciones proporcionadas aquí deben ser usadas exclusivamente para depuración y labores similares, tales como el análisis de código. Todas las funciones de esta biblioteca se proporcionan en la tabla debug.
Biblioteca auxiliar
La biblioteca auxiliar proporciona varias funciones convenientes para realizar la interface de C con Lua. Mientras que la API básica proporciona las funciones primitivas para todas las interaciones entre C y Lua, la biblioteca auxiliar proporciona funciones de alto nivel para algunas tareas comunes. Todas las funciones de la biblioteca auxiliar están definidas en el fichero de cabecera lauxlib.h y llevan el prefijo luaL_. Todas ellas están construidas encima de la API básica así que realmente no proporcionan nada nuevo que no pueda ser realizado con la API. Algunas funciones en la biblioteca auxiliar son usadas para verificar argumentos de funciones C. Sus nombres son siempre luaL_check* o luaL_opt*. Todas estas funciones activan un error si la verificación no se satisface. Debido a que el mensaje de error se formatea para los argumentos (por ejemplo, "bad argument #1"), no se deberían usar estas funciones para otros valores de la pila.
Biblioteca estandar
Las bibliotecas estándar de Lua proporcionan funciones útiles que están implementadas directamente a través de la API de C. Algunas de estas funciones proveen servicios esenciales al lenguaje (por ejemplo, type y getmetatable); otras proporcionan acceso a servicios "externos" (por ejemplo, I/O); y otras podrían ser implementadas en Lua mismo pero son muy útiles o tienen requerimientos críticos de tiempo de ejecución y merecen una implementación en C (por ejemplo, sort). Todas las bibliotecas están implementadas a través de la API oficial de C y se proporcionan como módulos separados en C. En estos momentos Lua tiene las siguientes bibliotecas estándar: Excepto para las bibliotecas básica y de empaquetado, cada biblioteca proporciona todas sus funciones como campos de tablas globales o como métodos de sus objetos.
- biblioteca básica;
- biblioteca de empaquetado;
- manejo de strings;
- manejo de tablas;
- funciones matemáticas (sin, log, etc.);
- entrada y salida (I/O);
- interacción con el sistema operativo;
- utilidades de depuración.