Сергей Протько: сдается мне, что "пока" не сделать... беру Unity3D, Node.js, HTML5 (WebGL), PhantomJS, и т.д. Скоро сделают исполнение JS на уровне ядра OS однозначно.
@xmoonlight: GLSL всякий всеравно будет один и тот же примерно что для C что для JS. Писать логику игры на JS - норм. Но вот графический/физический/аудио движок - как по мне это извращение.
@xmoonlight: это возможно только если избавить JS от его динамической природы и сделать статичным. А это сделает JS весьма посредственным и кривым языком.
Если же вы хотите иметь возможность менять объекты в рантайме, вычислять в рантайме типы и т.д. всякие там боксинги/анбоксинги/маршалинги всеравно будут иметь место. Чудес не бывает, иначе давно уже сделали бы что-то подобное.
Сергей Протько: Унификация архитектуры ЯП - задача сложная, но не нереальная. Думаю что-то уже давно делают в этом направлении: нужно просто подождать.
@xmoonlight: есть LLVM, примерно то что вы хотите делает, но и оно накладывает ограничения. У вас в JS коде не должно быть ничего что бы определялось в рантайме. Либо у вас будет зависимость от рантайма а это повлечет дополнительные накладные расходы и не отменит того что нужно будет иметь внутреннее представление объектов.
Скажем можно RPython скомпилить через LLVM, но Python скомпилить не выйдет.
@Taraflex LDC вроде что-то собирает, но вроде как только только рантайм и Phobos под Android x86 запилили, под ARM-ами может и работать не будет. Я вот хотел все попробовать поковырять да видать не судьба, другие приоритеты сейчас.
Ну а в будущем, возможно что и D на мобильные платформы поднянется. Функциональный Rust это конечно круто, но D было бы неплохо иметь так же. А C++ не должен оставаться единственным выбором.
C# в первую очередь, и во вторую C++.
Крайне не рекомендую ObjectiveC/Swift, так как это жёсткая привязка к платформе.
Будущее за кросс-платформенной разработкой, Unity и ему подобным (сча Unreal Engine).