1. ¿Qué es lua&luaJit?
lua(www.lua.org)En realidad es un lenguaje de scripting desarrollado para incrustar otras aplicaciones
luajit(www.luajit.org)Es un compilador de tiempo justo en tiempo de ejecución de lua, y también puede considerarse una versión eficiente de lua.
2. Ventajas
1) Lua es un lenguaje de scripting embebido libre, pequeño, sencillo, potente, eficiente y ligero, y la versión actual 5.3.1 de Lua es solo de 276k. 2) Es un proyecto desarrollado en C, por lo que puede ejecutarse en la mayoría de los sistemas operativos 3) Actualmente, Lua es el lenguaje de scripting más rápido, lo que puede mejorar la flexibilidad del lenguaje y maximizar la velocidad de retención 4) Su sintaxis es muy simple, no hay excepciones 5) Lua también puede usarse como API para C
3. Insuficiencias y diferencias
1) Lua no tiene una biblioteca potente, por lo que muchas funciones están implementadas sin los lenguajes de scripting concisos como python, perl y ruby 2) La función de gestión de excepciones de Lua es controvertida, aunque proporciona funciones de gestión de excepciones para pcland y xpcall 3) No se proporciona soporte para la codificación Unicode en el idioma nativo LUA, aunque http://www.cppblog.com/darkdestiny/archive/2009/04/25/81055.html puede lograrse mediante algunos compromisos 4) No proporciona operaciones ternarias de operador para a?b:c, que se usa ampliamente en C++ 5) Sin interruptor... caso... sintaxis, que solo puede hacerse a través de: si no... si no... si no... Método final 6) La sintaxis continue no se proporciona al hacer loops 7) No existen operaciones como a++ y a+=1, que se usan ampliamente en C++ 8) El índice de Lua empieza en 1, no en el conocido 0 (cadena, tabla) 9) Cuando asignas un elemento a cero, significa que el elemento no existe 10) El tipo numérico de lua es solo número, y no hay distinción entre int, float, double, etc 11) No existe el concepto de clases en lua, y sus clases se implementan en forma de tablas 12) Solo nil y falso en lua son falsos, y cero es verdadero en lua 13) Muchos programas necesitan marcar con () para ejecutarse, por ejemplo, a={["b"]=5}, se puede ejecutar print(a.b), pero {["b"]=5}.b informará de un error, y ({["b"]=5}).b es necesario
4. Resumen
En resumen, LUA es un ngx_lua sencillo y eficiente ampliamente utilizado en el desarrollo de lógica de juegos y en el desarrollo de servidores.
Transferido desde: https://blog.csdn.net/ugly_man_/article/details/48577007
Adjunto:
Prueba de comparación de rendimiento de Lua y Luajit: https://blog.csdn.net/alexwoo0501/article/details/50618031
|