Каждый уважающий себя программист хотя бы раз в жизни хотел придумать свой язык программирования – и сделать для него компилятор.
Подобное желание вполне понятно: сделать программу, которая в результате своей работы порождает другую программу – это, если вдуматься, волшебство, чистая магия! Кому же не хочется хоть немного поучаствовать в подобном волшебстве! На заре развития программных технологий, в шестидесятых-семидесятых годах прошлого века компиляторы часто так и называли – «программирующие программы».
А если хочется конструировать компиляторы в своей профессиональной деятельности? Надо сказать, это действительно редкая профессия, можно даже сказать, элита программистского сообщества. Чтобы «с нуля» разработать компилятор хотя бы для весьма компактного и простого языка программирования, требуется знакомство с внушительным пластом математических оснований – теорией формальных грамматик, алгоритмами над деревьями и графами, механизмами оптимизационных преобразований – а также освоение богатого практического опыта реализации компиляторов, накопленного за несколько десятков лет.
Кому требуются специалисты этой редкой профессии? Основные работодатели – это крупные международные компании, производители вычислительной техники. И современные теоретические и практические знания по созданию компиляторов сосредоточены именно там.
Исследовательский Центр Samsung в Москве одно из таких редких мест, и мы предлагаем осуществить мечту о собственном работающем компиляторе, поступив на программу Samsung Compiler Bootcamp.
Подробности читайте под катом.