Полный текст

Почему JS/TS — не функциональный язык (и почему это важно понимать)Спор о парадигмах JavaScript кажется избитым. Наличие .map() и стрелочных функций часто выдаёт язык за функциональный. Однако под капотом скрыты фундаментальные архитектурные издержки, ломающие саму базу FP.Мутабельность данных перечёркивает ссылочную прозрачность. Отсутствие оптимизации хвостовой рекурсии в V8 ведёт к переполнению стека. Ошибки через throw существуют вне системы типов, а эмуляция типов высшего порядка оборачивается тяжёлой борьбой с компилятором. Гравитация среды тянет код в императивный хаос, и преодолеть её крайне трудно.Разберёмся, почему JS чужд настоящему функциональному подходу.