Посмотри пример плагина который я выкладывал. Там нет фич, зависящих от языка. Вся работа на стеке и только на нем. Нет, это не актуально, по крайней мере для меня. Просто я пытаюсь донести мысль, что нельзя оставлять пилот-код в таком же состоянии, каким он был до луа и пытаться стянуть две технологии для совместимости. Вот смотри :
Код
log "clear" log "mode compact"
Это вкусовщина, но по-моему лучше сделать так :
Код
log(clear)
log(mode.compact)
Это как минимум. Можно еще лучше, вынеся настройки лога за функцию :
Код
log(clear)
log.mode.compact = true
Да вариантов несколько, не суть. Почему настройки-параметры передаются как строки, хотя они никак не связаны с ними ? Бред же.
Что касается лога с 10 параметрами. Тут смотри, луа может возвращать сколь угодно значений из функции и столько же принимать. Как луа-юзеру(именно луа) нужно догадаться, что ограничение 10 ? Почему 10 ? Это не естественные ограничения, а все эти обертки над логом адский костыль. Ты предлагаешь допиливать дефолтный лог при нужде ? Причем по совершенно глупой.
Это только вершина айсберга. Больше чем уверен есть еще много мест с такими нелепицами.