A General Theory of Reactivity концептуальное чтиво про реактивные структуры данных, promise, stream, task и подобные

@dmitry, реактивное программирование ближе к функциональному программированию или ОО? Если первое, то почему в коде активно используются new, this и оператор присвоения?

Сложно сказать. Черты обоих присутствуют (стримы как классы, при этом first-class functions). Реактивность - это больше о концепции (реакция на действие), чем о принципе (писать только в таких, закрепленных рамках).

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

Но ведь каждое присвоение разбивает одну программу на два состояния, как мне кажется, на две реактивные программы, не так ли? Или для реактивной программы нормально быть немножко императивной?

Верно ли я понимаю, что JS есть\может быть реактивным?
Вывод сделал исходя из того, что все термины указанные в статьи ( https://github.com/kriskowal/gtor11 ) встречаются в JS или их можно воспроизвести (библиотеки \ фреймворки в помощь).

Верно. Более того, мы уже встречались с реактивностью, когда работали с promis-ами, стримы есть в nodejs.

Вот примеры реализаций FRP:
большая майкрософтом поддерживаемая библиотека

Интересная библиотека стримов (сам ее не использовал, но это главный кандидат на попробовать) http://highlandjs.org/

Целый фреймверк, построенный на идее реактивности (с ним знаком близко, использую для сайдпроектов)
http://meteor.com/

Я не сильно подтянут в теории, чтобы обсуждать такой вопрос своими словами. Судя по примерам и словам человека, которого я считаю разбирающимся в вопросе, ответ на твой вопрос “да, нормально”.

С понимания я понял что это фреймворк как для клиента так и сервера (node.js) и плюс на клиенте можно использовать какие-то библиотеки (jquery). Верно ли?

Ты еще говорил что активно используешь React для нерабочих проектов - как он соотносится с метеором?

Это скорее платформа: у тебя есть набор инструментов для написания сервера, клиента, есть механизмы сделать код общим для сервера и клиента, есть встроенная система сборки. Про метеор я писал тут О meteorjs

Метеор не ограничивает тебя в использовании фреймверков и библиотек, которые ты хочеш (кто-то прикручивает react, кто-то angular). jQuery и underscore используются как часть стека.

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

При этом react и meteor можно подружить.