Является ли концепция отложенного/обещания в JavaScript новой или традиционной частью функционального программирования?

Мне очень нравится идея шаблона или парадигмы jQuery deferred/promise, но иногда у меня возникают проблемы со стареющим мозгом, когда я не могу разобраться в тонкостях или конкретных деталях реализации.

На самом деле, недавно я обнаружил, что шаблон/парадигма отложенного/обещания, по-видимому, предшествует jQuery, а также, по крайней мере, в других библиотеках/фреймворках JavaScript :

Я, вероятно, что-то пропустил, включил вещи, которые на самом деле являются частью одного из других, и допустил другие ошибки в этом списке... Пожалуйста, отредактируйте его, чтобы исправить, или оставьте комментарий.

Была ли концепция отложенного/обещания изобретена «Q»? Был ли он изобретен с какой-то другой библиотекой или фреймворком JavaScript? Или он полностью предшествует JavaScript?

Если вся идея традиционно была частью функционального программирования, где она была впервые реализована и где я могу прочитать об этой концепции в целом, а не об этих различных реализациях JavaScript?

Или функциональное программирование совершенно не имеет значения? Связана ли эта концепция с параллельным программированием больше, чем с функциональным программированием?

12
задан hippietrail 25 March 2014 в 12:42
поделиться