Lua:версиослэн висъяськемзы

Пушкесэз ӵушемын Пушкесэз ватсамын
Kotwys (вераськон | Ваёсъёс)
ч-п Ватсан
Kotwys (вераськон | Ваёсъёс)
Ватсан
70-тӥ чур:
print(fact(a))
</syntaxhighlight>
 
=== Быдэстон ӧръян ===
 
Lua-лэн ньыль герд йӧс вань: <code>while</code>, <code>repeat</code> (со <code>do while</code>-лы укша), лыдъёсын но огшоры <code>for</code> гердъёс.
 
<syntaxhighlight lang="lua">
while condition do
--condition зэм луыку быдэстоно
end
 
repeat
--condition зэм луыку быдэстоно
until condition
 
for i = start, end, delta do
--косонъёс
end
</syntaxhighlight>
 
Огшоры <code>for</code> герд:
 
<syntaxhighlight lang="lua">
for key, value in pairs(t) do
print(key, value)
end
</syntaxhighlight>
 
Со <code>t</code> таблицаез пырпотэ стандарт <code>pairs</code> функциез уже кутыса солэн <code>nil</code> берыктытозяз.
 
Озьы ик гердэз мукетаз понэм луэ:
 
<syntaxhighlight lang="lua">
local grid = {
{ 11, 12, 13 },
{ 21, 22, 23 },
{ 31, 32, 33 }
}
 
for y, row in ipairs(grid) do
for x, value in ipairs(row) do
print(x, y, grid[y][x])
end
end
</syntaxhighlight>
 
=== Функциос ===
 
Lua-лэн функциосыз инъетасен лыдъясько. Со возьматэмын татын:
 
<syntaxhighlight lang="lua">
do
-- Али print функциез oldprint-э пононо
local oldprint = print
function print(s)
--[[ Выльысь print функциез тупатон. Огшоры print-эз маке но уже кутэм луэ
oldprint вылэ чӧлскыса. Вылез одӥг гинэ аргумент басьтэ.]]
oldprint(s == "foo" and "bar" or s)
end
end
</syntaxhighlight>
 
Котькуд вуоно <code>print</code>-эз курон выль функцие ыстӥськоз. Нош Lua-лэн лексической ватонлы луыса нырысетӥ <code>print</code> уже кутэм воштэм <code>print</code> пыр гинэ луэ.
 
Lua нош ик берпумъянъёсты лэзе:
 
<syntaxhighlight lang="lua">
function addto (x)
-- x-эз аргументлы ватсась функциез берыктоно
return function (y)
--[[ Педпалась x вошъяськись, кудӥзлэн улондырызлэн та лушкем функцилэсь
вакчигес луэмез луэ, вылэ чӧлскыку Lua берпумъянэз кылдытэ.]]
return x + y
end
end
 
local fourplus = addto(4)
print(fourplus(3)) -- 7 возьматоз
 
-- Озьы ик яра
print(addto(4)(3)) -- берыктэм функциез курон
</syntaxhighlight>
 
<code>x</code> кутӥсь берпумъян кылдэ котькуд дыръя, куке <code>addto</code> куремын луэ. Соин ик котькуд берыктэм лушкем функция нимаз <code>x</code>-эз кутэ. Берпумъянзэ мукет объектъёсты кадь октылэ Lua-лэн жаг октӥсь.
 
== Чӧлсконъёс ==
«https://udm.wikipedia.org/wiki/Lua»-ысь басьтэмын