Lua
Por aliaj signifoj, bv. rigardi la apartigilan paĝon: LUA |
Lua estas programlingvo dinamika malpeza, refleksiva, ordonema kaj iom funkciema. La
Lua | |
---|---|
programlingvo • funkcia programlingvo • objektema programlingvo • manuskripta programlingvo • ordonema programlingvo • interpretata programlingvo • tradukata programlingvo • libera programaro | |
Paradigmo: | Multaparadigma: objektema, imperativa, funkcia, meta |
Paradigmo(j): multparadigma programado • objektema programado • funkcia programado • proceda programado • prototipema programado • ordonema programado | |
Aperis en: | 1993 |
Aŭtoro(j): | Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes |
Tipa sistemo: | dinamika, forta, duck |
Ĉefaj realigoj: | Lua, LuaJIT, LuaVela, MoonSharp, Luvit, LuaRT, Luau |
Programlingva(j) dialekto(j): | Metalua, Idle, GSL Shell |
Kreita sub la influo de: | Io, JavaScript, Ruby, Squirrel, Julia, MiniD |
Havas influon sur: | C++, CLU, Modula, Scheme, SNOBOL |
Permesilo(j): | angle MIT |
Retejo: | angle [1] |
plej grava celo de ĉi tiu programlingvo estas ebligi ke aliaj programoj uzu ĝin kiel etendilon. Nuntempe, multaj komputilludoj uzas Lua-n, pro ĝia facileco, por difini dinamikajn aferojn de la ludo, ekzemple: artefaritan intelekton, poziciojn de ludantoj, ilojn en scenejoj, kaj tiel plu. Alia programlingvo, ekz. C++ pro ĝia rapideco, estas uzata por grafikaj funkcioj kaj la baza logiko de la ludo.
Lua estis kreita en 1993 en Brazilo de Roberto Ierusalimschy, Luiz Henrique de Figueiredo kaj Waldemar Celes. Ĝia nomo signifas luno en la portugala.
Filozofio
redaktiLua estas plurparadigma programlingvo. Pro tio, la programisto povas uzi la stilon, kiu plej taŭgas en ĉia situacio. Malgraŭ tio, Lua estas tre malgranda kaj malpeza. Ĝi ebligas krei multajn konceptojn de aliaj programlingvoj per pli simplaj kaj bazaj konceptoj. Ekzemple, oni povas krei klasojn, nomspacojn kaj listojn per asociaj tabeloj (pli specife, hakettabeloj), Luae nomataj «tabeloj» (angle tables). La asociaj tabeloj simple ligas parojn da datumoj, tiel ke unu estas la indico (aŭ ŝlosilo) por trovi la alian. Kiam oni uzas entjerojn kiel ŝlosilojn, tiuj tabeloj aspektas kaj uzeblas samkiel la ordinaraj tabeloj de la tradiciaj ĝeneralcelaj programlingvoj (respondaj al vektoroj, matricoj ktp).
Krome, Lua havas esprimilon nomatan meta-tabeloj (meta-tables) por ŝanĝi specifajn kondutojn de tabeloj. Ekzemple, oni povas agordi ke, se iu datumo ne troveblas en la tabelo, Lua serĉu ĝin per la sama ŝlosilo en alia tabelo. Tio estas la bazo por realigi klas-heredadon en Lua.
Eblas mencii ke Lua estis influita de programlingvoj kiel Scheme kaj Icon, kaj influis Io-n. La kreo de Lua okazis precipe pro la bezono havi simplan lingvon por agordi pli kompleksajn programojn kaj samtempe aldoni iom da logiko (algoritmojn) al la agordodosieroj (kompare kun statikaj agordlingvoj, kiuj nur entenas datumojn kaj povas komputi nenion). Pro la facileco kaj dinamikeco de Lua, ĝi ofte estas komparata kun Python.
Referencoj
redaktiEksteraj ligiloj
redakti- lua.org Oficiala Retejo angle portugale
- lua-users.org Arkivigite je 2010-12-16 per la retarkivo Wayback Machine Retejo de la uzantoj de Lua angle