Алан Закай (Alon Zakai) из подразделения компании Mozilla, занимающегося мобильными технологиями, создал компилятор Emscripten, преобразующий байт-код LLVM в JavaScript-представление, что сделало возможным сформировать код на языке JavaScript из исходных текстов на другом языке, для которого имеется LLVM-транслятор. Например, для преобразования кода на С/С++ на первом этапе при помощи llvm-gcc или clang формируется байт-код, используя который компилятор Emscripten формирует JavaScript-код.

В отличие от технологии Native Client, которая позволяет выполнять исполняемый код на стороне пользователя через плагин в браузере, Emscripten формирует скрипт на языке JavaScript, который может быть интерпретирован непосредственно встроенным в браузер JavaScript-движком, без дополнительных плагинов. Решение от Emscripten существенно медленнее (по оценкам, примерно в 20 раз) решения Native Client, но в отличии от Native Client, которое в полной мере поддерживает только 32-битную архитектуру, является платформенно-независимым.

Источник: http://www.opennet.ru/opennews/art.shtml?num=27831