Я полагаю, GWT , основанный на Java, может быть самым популярным продуктом такого рода, хотя я бы не назвал его «компиляцией Java в JS», а скорее «генерацией кода JS». Хотя я лично разделяю некоторые из ваших сомнений и предпочел бы кодировать JS напрямую, я должен признать, что это действительно чрезвычайно практичный, а также популярный инструмент, полностью готовый к работе: я заметил, что внутренне многие веб-приложения, которые богаты и достаточно сложные, чтобы гарантировать разделение внешнего интерфейса и внутреннего интерфейса, все чаще и чаще заканчиваются как внутренний интерфейс Python и внешний интерфейс Java - последний специально предназначен для GWT (конечно же, существует множество Python внешние интерфейсы и множество Python-интерфейсов, но я думаю, что это тенденция).
Google Wave использует GWT и, вероятно, является наиболее обсуждаемым веб-приложением, использующим его до сих пор; вместе с огромным количеством веб-приложений, использующих GWT, перечисленных здесь , я думаю, что вне всякого сомнения устанавливается, что этот подход практичен (а также популярен ;-). Является ли это оптимальным (по сравнению с написанием реального javascript с хорошей структурой в поддержке) - вопрос сложнее ответить.