> Ну если тебе слово семантика приходится гуглить - тады ой, непонятно чем ты 20 лет занимался)Пилил прикладные задачи, начиная от игр, заканчивая "офисным редактором"; некоторые с нуля (от первой строчки и до публикации).
Что странно, ни разу не понадобилось это определение.
> Попробуй, например, изобразить на механизме классов Паскаля/Дельфи функторы.
Ты серьезно хочешь в средней школе рассказывать про функторы?
Я уже представляю лица детей если им начать задвигать про монады)
Информатика, на минуточку, начинает учиться с 5 класса.
> А в нормальных модульных языках - запросто.
> Нормальные ЯП ортогональны
Хоть бы пример привел) Что ты нормальным считаешь.
У функциональных ЯП есть своя ниша, но например двигать битики на них не очень удобно. Или писать обработку изображений. Но это не недостаток, а просто особенность инструмента.
Какой-нибудь Идрис отлично применим для задачи, которую нужно потом еще автоматически доказать.
Но драйвер для виделокарты на нем будет написать существенно сложнее чем на с/с++/rust.
> Язычкам вроде паскаля или сишки это вообще не снилось.
А должно? Язык для обучения программированию не подразумевает, что ты еще будешь автоверификацию делать.
С другой стороны, Ада как-то умеет в формальную проверку, хотя совсем не функцианальный ЯП.
Одно из немногих формально верифицированных ядер - это seL4, верифицировали его с помощью Хаскеля, а вот написано оно таки на С и ассемблере.
Ибо что в нем, что в идрисе есть сборщик мусора - значит быстро не получится.
Более того у него есть некие проблемы с многопоточностью issues/22468
В общем для каждой задачи, свой инструмент)