Всем привет, подскажите/расскажите пожалуйста, что предпочтительней и почему Lua или Jass?

Первая карта (benchmark.w3m) содержит исходники скрипта.
Вторая карта (benchmark-packed.w3m) уже укомплектована DLL с нативками и готова к запуску.
Решил у себя проверить, вот разница от local integer p и local integer dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd
Разница в 24нс на 1 итерацию.
Дальше по поводу вызова функций, ForForce добавляет свою задержку, но хз по идее она не должна сильно повлиять, а по поводу сортировки, тут уже отсутствие оптимизации компилятора/интерпретатора, который есть даже на паскале, по этим нюансам офк джасс уступает, но я говорил непосредственно про нативки и про +- дефолтную "конвенцию" и работу со скриптами от большинства картоделов, кому эта разница не увидится нигде.
Но если уже судить по всем пунктам и сразу, то конечно же LUA будет лучше по всем параметрам в плане производительности и скорости, но у Джасса своя ниша, и куда более простой "путь" входа, что фактически является его самым большим и возможно единственным плюсом.
Это все очень хорошо, но так и не дали главный ответ - что лучше луа или джасс? Чтобы можно было закрыть этот тред
Ответ был уже дан - LUA профитнее по большим пунктам, если есть хоть чуть-чуть знания/азы программирования. Если же нет, то Джасс будет проще и быстрее освоить, да и в плане Вар 3 - я считаю что он всё-равно удобнее.
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
29
Прекращайте срач, дайте автору вопроса короткий, чёткий и понятный ответ.
38
Unryze, откуда ты все эти сишные сурсы вообще взял, это ваша большая работа по реверс инжинирингу?
За бенчмарки спасибо, на каком цпу делались тесты? Потому что надо умножать это на число модулей в твоей карте и учитывать, что играют люди с медленных нетбуков, оттуда и берутся эти мс в процессе рендеринга, получается в среднем логично и сильно заметно в игре.
Вообще, оперировать секундами как метрикой такое, лучше отношение в процентах или в разах.
Ну а в целом хотелось бы большую статью с разбором таких вот моментов, как конкретно устроены процессы и передача данных.
17
Много интересных постов в теме, но ответа на главный вопрос так и не было. Lua или Jass?
Луа может очень часто/очень сильно в колено стрелять из-за отсутствия типизации или плохой структуры проекта
28
N1ghtSiren, решается транспилом из TypeScript или любого другого типизированного языка.
15
Не понимаю в чём смысл имена переменных рассматривать. Большинство оптимизаторов сокращают их до трёх символов. Да и кто делает имена из 120 символов?
38
JackFastGame, в хорошем кодинг стайле встречаются длинные имена, хоть и не 120 символов
15
ScorpioT1000, зачем на релизе хороший код стайл? Большинство карт протектят/оптимизируют, обычный юзер не будет лезть в mpq и пытаться разобрать war3map.j, а кому надо тот вежливо попросит исходники.
Ну и применять код-стайл из одного языка к другому с совсем другими парадигмами очень странная затея. Jass не похож на Java ни капли, и задачи у них совершенно разные.
38
JackFastGame, карта может быть открытая для сообщества, не задумывался о таком?) зачем применять костыли к тому, что должно и так работать как часы.
15
ScorpioT1000, окей, какой процент карт открыт для сообщества? 1%? Да и в любом случае исходники надо отдельно хранить от релизной версии, иначе это извращенство какое-то.
28
карта может быть открытая для сообщества, не задумывался о таком?
Ну и что? В исходниках большая длина названий, в релизе, который оптимизирован, все переменные имею малую длину.
17
зачем на релизе хороший код стайл? Большинство карт протектят/оптимизируют, обычный юзер не будет лезть в mpq и пытаться разобрать war3map.j, а кому надо тот вежливо попросит исходники.
Тебе самому будет невозможно разобраться в своём коде для карты, состоящей из множества игровых систем. Имена переменных должны быть говорящими, даже если ты вернулся к разработке карты после трёх месяцев отдыха.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.