Я читал об основной идее реактивного программирования, заключающейся в том, что переменные изменяются со временем в зависимости от выражения их исходного значения. Я даже реализовал это с помощью выражений. Но потом я смотрю на Microsoft Reactive Extensions (Rx) и вижу нечто совершенно другое. Где переменные, которые со временем самообновляются? Их не видно. Просто какой-то причудливый способ перечисления аргументов события.
Итак, мой вопрос: насколько «реактивным» является Rx на самом деле? Является ли функциональность, которую мы видим сейчас, предвестником того, что будет? Или Microsoft небрежно разбрасывается модным словом? Или я просто полностью упускаю суть (в этом случае я хотел бы, чтобы вы объяснили, как это сделать)?
РЕДАКТИРОВАТЬ: я уже получил несколько отличных ответов с описаниями Rx, кроме того, вопрос закрыт. :( Но я все еще надеюсь услышать больше в духе:
- В каком смысле Rx «реактивен»? Я думал, что самообновляющиеся переменные были центральной идеей, но Rx их не предоставляет. LINQ-to-Events кажется лучшим названием для Rx. Я начинаю думать, что, возможно, Microsoft неправильно использовала слово «реактивный», применяя его к Rx.
- Каким образом текущая функциональность Rx может быть предшественником самообновляющихся переменных? Я реализовал такой функционал и ничего полезного для этого от Rx не заметил.