Lua
Ka Halbeeg, ensaykloobediyada furan · In English
75 luqadood
Lua waa luqad barnaamij-samays (programming language) ah oo loo qaabeeyey inay yar tahay, degdeg u shaqeyso, oo si fudud lagu dhex-dhigi karo barnaamijyo waaweyn. Magaca 'Lua' waxaa laga soo qaatay erey Boortaqiis ah oo macnihiisu yahay 'dayax'. Waxay ka soo jeeddaa Brasil, waxaana lagu sameeyay jaamacad ku taal Rio de Janeiro (PUC-Rio) horraantii sanadihii 1990-meeyadii.
Lua waxay caan ku tahay adeegsiga 'embedding' – ka dhigan in luqadda lagu dhejiyo barnaamij kale, sida ciyaar kombuyuutar ama nidaam shaqeynta shabakadda, si isticmaalayaasha ama horumariyayaasha ay ku qori karaan qaybo isbeddelaya iyada oo aan barnaamijka oo dhan dib loo dhisin. Turjumaanka (interpreter) Lua wuxuu ku qoran yahay luqadda C, waana mid yar oo si fudud loogu wareejin karo aalado kala duwan.
Astaamaha luqadda
Lua waa luqad 'dynamically typed' ah: nooca xogta lama caddeeyo marka la qorayo, ee waxaa go'aamiya waqtiga socodka. Qaab-dhismeedkeeda xogta ugu muhiimsan waa 'table' – liis iyo qaamuus (key-value) isku dhafan. Table-yada waxaa lagu dhisi kara array-yo, diiwaanno, iyo xitaa nidaam 'object-oriented' oo iyagoo la kaashanaya astaanta 'metatable'. Sidoo kale Lua waxay taageertaa 'closures' iyo hawlo (functions) oo qiimo ahaan la gudbin karo.
Fulinta iyo LuaJIT
Koodhka Lua marka hore waxaa loo beddelaa 'bytecode', ka dibna waxaa fuliya mashiin farsamo ah (virtual machine). Waxaa jira sidoo kale mashruuc kale oo la yiraahdo LuaJIT, kaas oo isticmaala habka 'just-in-time compilation' si loo kordhiyo xawaaraha. Xusuusta waxaa maamula nidaam 'garbage collection' ah oo iskiis u nadiifiya xogta aan mar dambe la isticmaalayn.
Meelaha loo isticmaalo
Warshadaha ciyaaraha waa mid ka mid ah goobaha ugu waaweyn ee Lua lagu adeegsado, maadaama qaar badan oo ka mid ah mishiinada ciyaaraha ay Lua u isticmaalaan qorista 'scripts'. Sidoo kale waxaa loo isticmaalaa qalabka shabakadda iyo aaladaha yar-yar (embedded systems), iyo dhinaca websaydhyada – tusaale, nidaamyada wiki qaarkood waxay Lua u isticmaalaan samaynta 'templates' iyo qaybo qoraal ah oo iskood isu buuxiya.