В работе изложены основы, касающиеся разработки, реализации и применения конструкций как императивных, так и функциональных языков программирования. Значительное внимание уделяется применению денотационной семантики, позволяющей в полной мере извлечь преимущества объектно-ориентированного подхода, что, в конечном счете, позволяет построить результирующую вычислительную модель чисто функционального типа. Изложение материала сопровождается детально разобранными примерами, которые снабжены комментариями, помогающими уяснить реализацию конструкций различных языков. Книгу можно использовать в качестве учебника или справочного пособия. Она будет полезна как студентам и аспирантам, так и профессионалам в области компьютерных наук, информационных технологий и программирования. Данная публикация входит в состав ''Библиотеки учебных курсов'', формирование которой ведется в рамках программы академического сотрудничества MSDN Academic Alliance (MSDN AA)