Re[53]: А при чем тут DSL? (в продолжении темы о языках общего назначения)
От: alex_public  
Дата: 26.03.13 14:00
Оценка:
Здравствуйте, Tanker, Вы писали:

T>У тебя должно быть хорошее объяснение, почему насквозь императивное ООП отлично влезает в те области, которые, казалось бы, на раз покрываются возможностями функциональщины, МП и ДСЛ. И наоборот — функциональщина, МП и ДСЛ почему то болтаются где то на той грани, дальше которой ими можно пренебречь и хорошо живет только в очень, очень специализиваных нишах, можно даже сказать вырожденых случаях, где нужно решать одну единственную задачу, вдобавок ко всему жестко прижестко изолированую.


Кстати, недавно как-то обратил внимание на один забавный нюанс в этой области. Особенно забавный в контексте местных мыслей о продвижение МП. Обычно при этом подразумевают всякие маргинальные языки... Но ведь настоящее МП есть в самом мейнстримовом языке! Макросы в C/C++ — это же прямое МП. Ну т.е. конечно их частенько и для ерунды (типа объявления констант и т.п.) используют, но можно и именно для генерации кода. Я например только так и использую — очень удобно для всяких там тестов и т.п.

А теперь внимание! Смотрим большинство учебников или советов по языку и видим что там выдвигается жёсткий лозунг: "Макросы — зло! Стараться не использовать!".

Более того, этому лозунгу следуют везде. Помнится в прошлом для организации вещей типа обработки сообщений была популярна техника составления таблиц обработчиков с помощью макросов. Сейчас же в большинстве библиотек это переписано (!) на техники типа сигнал/слот (причём через средства самого языка, а не через извращения как в устаревшей Qt).

И таких примеров не мало. Т.е. получается что на самом деле в мейнстриме всё это время происходил плавный отказ от средств МП в пользу встраивания необходимых инструментов в сам язык.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.