LuaRu

Материал из ТХАБ.РФ
Перейти к: навигация, поиск

Версия языка lua в которой дополнительно добавлена (а не заменены) возможность использовать русские

  • имена переменных - в современной версии Lua запретили даже использовать не латинские имена переменных и функций ("Для совместимости")
  • функций
  • ключевых слов
  • русификация сообщений об ошибках

Загрузить

LuaRu промо

Области использования

  • написание и модификация скриптов для игр и ПО
  • написание торговых роботов для QUIK
  • изучение программирования

Замечания

  • пример того как можно добавить русские названия для базовых ф-й (см. файл lbaselib.c).
  • И насчет битовых операций учебнике LuaRu устаревшая информация, в версии 5.3 добавлена полноценная их поддержка.

Что добавить (по приоритетам )

  • русские имена переменных
  • русские имена функций
  • русские ключевые слова из 1С/Си Зуев интерстрон
  • сообщения об ошибках на русском языке
  • русские примеры и тесты
  • русский учебник
  • конвертер русс-лат
  • Редактор кода с подсветкой одновременно русского И АНГЛИЙСКОГО синтаксиса
  • Редактор кода с подсветкой и автодополнением русского синтаксиса.

Ключевые слова и их перевод

1. Учитывая особенности русского языка имеет смысл для некоторых операторов добавить 2 синонима. Например

  • true - да, правда
  • false - нет, ложь

2. Для улучшения читабельности текста возможно имеет смысл делать elseif переводить как иначе_если, а не иначеесли или ИначеЕсли

3. и, или, не, - сделать большими И, ИЛИ, НЕ - ?

3. после получения рабочей альфа версии необходимо будет ещё раз провести ревизию синтаксиса и на читабельность на больших кусках кода

Lua Зуев LuaRu rts256
and И и
break первать / выход стоп
do делать, повторять начало
else иначе иначе
elseif иначе_если иначеесли
end конец всё
false ложь, нет ложь
for для для
function функция функция
goto перейти, перейти_к идина
if если если
in в в
local локальная локал
nil пусто нуль
not НЕ не
or ИЛИ или
repeat повторить повторять
return вертуться, в начало возврат
then то, тогда тогда
true правда, да истина
until покаНе покуда
while пока пока

Пример кода

function square(iteratorMaxCount,currentNumber)
  if currentNumber<iteratorMaxCount
   then
     currentNumber = currentNumber+1
     return currentNumber, currentNumber*currentNumber
  end
end

for i,n in square,3,0
do
  print(i,n)
end

На LuaRu

функция Квадрат ( целСчётчикМаксимальноеКоличество, текущийНомер )
   если текущийНомер < целСчётчикМаксимальноеКоличество
    тогда
      текущийНомер= текущийНомер + 1
      возврат текущийНомер, текущийНомер * текущийНомер
   конец
конец
для и, н в Квадрат, 3, 0
делай
  печать(и, н)
конец

LuaRu разработка

См. также

Ссылки