Создатель проекта LLVM удостоен премии ACM
Ассоциация вычислительной техники (ACM), наиболее авторитетная международная организация в области компьютерных систем, объявила о присуждении первой премии за вклад в развитие языков программирования (SIGPLAN Programming Languages Software Award) Крису Латнеру (Chris Lattner), основателю и главному архитектору проекта LLVM (Low Level Virtual Machine). Премия присуждается за значительное влияние LLVM на связанные с языками программирования исследования, реализации технологий и инструменты.Торжественная церемония вручения премии состоится на конференции PLDI 2010 (Programming Language Design and Implementation), проходящей с 5 по 10 июня в Торонто (Канада). Размер денежного вознаграждения относительно небольшой - 2500$, но сумма лишь формальность, главное - важность признания. Латнер уже заявил о намерении перечислить причитающуюся ему сумму в фонд развития проекта LLVM.
LLVM представляет собой инструментарий (компиляторы, оптимизаторы и генераторы кода), компилирующий программы в промежуточный байткод RISC-подобных виртуальных инструкций (низкоуровневая виртуальная машина с многоуровневой системой оптимизации). Сгенерированный платформонезависимый псевдокод может быть преобразован при помощи JIT-компилятора в машинные инструкции непосредственно в момент выполнения программы. Заложенная при проектировании LLVM архитектура заменяемых частей инфраструктуры компиляции позволила использовать части LLVM при создании других инструментов, назначение которых варьируется от компиляторов, JIT-систем, оптимизаторов до статических оптимизиаторов и систем верификации кода.
Первый релиз LLVM вышел в октябре 2003 года, с тех пор проектом заинтересовались такие компании, как Apple, Adobe и Cray, решившие использовать LLVM в своих коммерческих продуктах, отмечая простоту, гибкость и приспособляемость данной системы. Спустя два года автор проекта был приглашен в компанию Apple на должность главного архитектора подразделения по разработке компиляторов, где и он работает по настоящее время.
© OpenNet