Все больше присматриваюсь к этому чуду, и все больше понимаю что это тот инструмент, который мне нужен. Дико жалею, что для плотного знакомства пока не хватает времени.
...
ps Lua сегодня стал тем, чем мог бы стать Oberon. Легкий мощный прикладной язык, с хорошим окружением и документацией.
Я, и особенно моя сестра, сие чудо весьма неплохо изучили. Если говорить о грамматике, то несмотря на краткость записи в РБНФ (оно по метрикам того же Свердлова, в плане минималистичности, рвет Оберон как тузик грелку) язык достаточно заковыристый. Одни строковые многострочные литералы чего стоят (попробуйте ка написать лексер).
В плане же конечного программиста, Луа, не подходит для масштабных проектов в силу двух причин:
1) динамическая типизация (рефакторинг == Ад).
2) ограниченные выразительные возможности языка (все есть таблица - ничем не лучше, чем все есть Объект в классическом ООП), следовательно код получается либо многословным, либо не понятным, причем ошибки неверного использования абстракций которые наворочали через таблица, из за пункта (1) не выявляются до тех пор пока программу не запустишь.
Скажем у питона мерзкий пункт (1) остается, зато вот пункта (2) уже практически нет. А у Оберона наоборот - пункта (1) нет, а пункт (2) во всей красе.
Луа отлично подходит для написания мелких и очень мелких программок льдьми которым некогда тратить время на "серьезные" ЯП. Теми же геймдизайнерами например. Порог вхождения низок, и язык ориентирован на обработку табличных данных, которые типичны для игр (внимание, таблицы не подразумевают SQL где-то рядом! равно как и реляционку тоже не подразумевают).