Эксперименты с языками и чтение форума навели на одну здравую мысль. Каким бы кривым не был язык скриптового модуля, для инжекта он останется лучшим. Заменить его почти не возможно. Прогнуть мир под себя можно только в песне…
Замена языка, даже на слегка более сложный вызывает полный ступор. При первых же трудностях пользователь его забросит. Спросить что-то по хитрому язычку не у кого, а самому не у всех выходит.
Это по мойму единственная причина слабого интереса к перлинже, асму и т.д. Тоже самое касается команд и самого принципа работы, привычка у человека сильнее его. IRW, гендальф тому пример. Лучше они или хуже пофиг, это не инжа.
Править родной язычек смысла нет, единственный верный вариант(мое мнение) это взять другой язык и подпилить его под нынешний. Что позволит использовать то, что есть с минимальной корректировкой.
Например, редактором с функцией найти-заменить. Вот что вышло на сегодня..
ключевые слова:
Sub - НА -> function
End sub, next, wend, end if - НА -> end
Переменные:
var a - НА -> local a
Массивы:
Dim aaa[10] - НА -> aaa = {}
Выучить 7 новых терминов
break, do, elseif, false, nil, true, local
Запомнить
что переменную перед использованием можно не объявлять
что переменная глобальна, можно это не запоминать и тыкать везде перед ней слово local(типа это var)
что массив многомерен, и начать спрашивать это как?
что return может возвращать все что угодно и в любом количестве
что 0 это не false, а 1 не true (кто это использовал править ручками)
На этом большинство может завершить свое обучение… Изменения только ключевых слов.
Для тех, кто способен запомнить больше, классы, объекты, огромная библиотека функций, закрытый код. Работа с файлами, в том числе и с бинарными. И т.д.
Для тех, кто задумался над вопросом как это не объявлять переменные? Скажу одну вещь, в этом языке нет переменных и массивов… Они есть только в голове, на самом деле это ссылка на память и все.
Например Можно создать массив функций, или кусков функций… и собирать из них скрипт на лету из кусочков и файликов.
Code:
Gong =local function gong()
Bla bla blaaaa
65 strok
End
Или
Code:
Gong =
Bla bla blaaaa
65 strok
Или
Code:
Gong =doFile(gong.txt)
Code:
function aaaa()
……..
Gong
……
End
Короче если последние абзацы не понятны, то я прав… Не нужно парится, язык тот же что и был, только расширенный чуть чуть, место где нужно остановится указано.