Comments 2
Что имеет больший смысл: постоянное развитие некоторого языка программирования или создание на его базе новых языков программирования? Стандартизация, как представляется, должна зафиксировать некое оптимальное положение равновесия между изобразительной силой и семантической прозрачностью.
Заодно хотелось бы узнать, имеется ли среди нововведений возможность создания локальных C/C++-подобных языков для решения отдельных задач (и, разумеется, автоматическое создание соответствующих компиляторов)? По сути, речь идёт о введении новых операторов и ключевых слов. Например, это могут быть специальные обозначения для стандартных объектов или шаблонов (list, map, tree, graph, vector, matrix...).
И ещё:
В итоге возникает конфликт между кастомизируемостью и развиваемостью софта.
А почему приложения обязаны быть монолитными? Если каждое приложение представлять в виде базы данных программного кода, то конкретная программа — это результат запроса к кодовой базе данных. (В этом смысле, операционная система — это система управления кодовыми базами данных.) Иерархия классов — это попытка построить такую базу данных, однако, классы более удобны для описания программного обеспечения, нежели для описания кодовой базы. Наверное, здесь нужен какой-то смешанный подход, который совмещает реляционные и нереляционные базы данных с процессно-ориентированным программированием (алгоритмические сети, сети Петри и хоаровские взаимодействующие последовательные процессы).
Ох ребята, за Dave Abrahams огромное спасибо. С нетерпением жду видео с субтитрами
О чем расскажут на С++ Russia 2021