Языки программирования
Dec. 15th, 2013 04:09 pmОтличный курс на Курсере — Programming Languages Дэна Гроссмана. Хорошее, университетского уровня, введение в ЯПы с практическими упражнениями.
Любимая тема автора — функциональное программирование, и он очень внятно объясняет все основные моменты: функции высшего порядка, сопоставление с шаблоном, хвостовая рекурсия, лексическая область видимости и замыкания, каррирование, отложенные вычисления. ООП идет номером два: рассматриваются наследование и динамическая диспетчеризация (одиночная и множественная) и предпринимается познавательная попытка сравнения этой парадигмы с функциональной. По ходу разговора затрагиваются и такие общечеловеческие понятия, как неизменяемость значений, полиморфизм типов и параметрический полиморфизм, инкапсуляция, типизация (статическая и динамическая, сильная и слабая), компиляция и интерпретация.
Должен сказать, что из этого курса я реально узнал для себя что-то новое и вспомнил много хорошо забытого старого. К тому же в дополнение к видеоматериалам (на которые обычно не хватает времени) автор не поленился подготовить письменный конспект. Если бы его издать в виде книги, я бы приобрел.