1. Was ist lua&luaJit?
lua(www.lua.org)Es handelt sich tatsächlich um eine Skriptsprache, die entwickelt wurde, um andere Anwendungen einzubetten
Luajit(www.luajit.org)Es ist ein Just-in-Time-Laufzeit-Compiler von lua und kann auch als effiziente Version von lua bezeichnet werden.
2. Vorteile
1) Lua ist eine freie, kleine, einfache, leistungsstarke, effiziente und leichte eingebettete Skriptsprache, und die aktuelle Verteilungsversion 5.3.1 von Lua umfasst nur 276k. 2) Es handelt sich um ein in C entwickeltes Projekt, sodass es auf den meisten Betriebssystemen laufen kann 3) Lua ist derzeit die schnellste Skriptsprache, die die Flexibilität der Sprache verbessern und die Speicherzeit maximieren kann 4) Seine Syntax ist sehr einfach, es gibt keine Ausnahmen 5) lua kann auch als API für C verwendet werden
3. Unzulänglichkeiten und Unterschiede
1) Lua verfügt nicht über eine leistungsstarke Bibliothek, daher werden viele Funktionen ohne die prägnanten Skriptsprachen wie Python, Perl und Ruby implementiert 2) Luas Ausnahmebehandlungsfunktion ist umstritten, obwohl sie Ausnahmebehandlungsfunktionen für pcland und xpcall bereitstellt. 3) Die Unterstützung für Unicode-Codierung ist in der LUA-Muttersprache nicht verfügbar, obwohl http://www.cppblog.com/darkdestiny/archive/2009/04/25/81055.html durch einige Kompromisse erreicht werden kann 4) Es bietet keine ternären Operatoroperationen für a?b:c, was in C++ weit verbreitet ist. 5) Kein Schalter... Fall... Syntax, die nur dann durchgeführt werden kann, wenn: sonst wenn.. sonst wenn.. oder.. Endmethode 6) Die Continue-Syntax wird beim Schleifen nicht bereitgestellt 7) Es gibt keine Operationen wie a++ und a+=1, die in C++ weit verbreitet sind 8) Luas Index beginnt bei 1, nicht bei der vertrauten 0 (Zeichenkette, Tabelle) 9) Wenn man ein Element auf null setzt, bedeutet das, dass das Element nicht existiert 10) Der numerische Typ von Lua ist nur Zahl, und es gibt keinen Unterschied zwischen int, float, double usw 11) Es gibt kein Klassenkonzept in Lua, und ihre Klassen sind in Form von Tabellen implementiert 12) Nur null und falsch in Lua sind falsch, und null ist in Lua wahr 13) Viele Programme müssen mit () markiert werden, zum Beispiel a={["b"]=5}, print(a.b) kann ausgeführt werden, aber {["b"]=5}.b meldet einen Fehler, und ({["b"]=5}).b ist erforderlich
4. Überblick
Zusammenfassend ist LUA ein einfaches und effizientes ngx_lua, das weit verbreitet in der Entwicklung von Spielelogiken und Servern verwendet wird.
Übertragen von: https://blog.csdn.net/ugly_man_/article/details/48577007
Angehängt:
Lua-und-Luajit-Leistungsvergleichstest: https://blog.csdn.net/alexwoo0501/article/details/50618031
|