Re: Alexander Stepanov, Elements of Programming, C++, мысли
Здравствуйте, frontsquat, Вы писали:
F>Сегодня случайно наткнулся на Elements of Programming. Полистал — очень интересная и глубокая книга. C++ знаю очень слабо. Но именно эта книга вызвала интерес и заставила задаться вопросом — почему Степанов выбрал именно этот язык? Появилась мысль — может просто раньше не видел чего-то в C++, что дает ему неоспоримые преимущества... Или это просто так исторически сложилось — далекие времена, авторство STL, мейнстрим... Но если причина не эта, то опять — почему C++? Почему объяснять такие вещи на нем, а не взять тот же Haskell. И вот та цитата вначале — критика ООП Степановым — еще один повод отказаться от этого языка. Конечно C++ мультипарадигменный, но в нем отсутствуют вещи, которые были в ФЯ изначально и теперь постепенно перетекают в мейнстрим. Хотелось бы услышать ваши мысли, мысли людей, которые разбираются гораздо лучше меня в этом вопросе.
Все просто: C++ – единственный на сегодня язык, позволяющий
эффективно использовать generic programming. С++ он ни в коей мере идеалом он не считает, но лучшего языка для GP найти не может. Степанову не нравятся языки, которые не позволяют по полному использовать железо (x86, то есть), и строят над ним свои абстракции. Лучшей абстракцией над железом он считает "Си-машину". Если поискать, можно найти его высказывания на эту тему (
stepanovpapers.com).
P.S. Степанов
начинал на схеме, и пришел к С++, в отличие от многих.