This document summarizes the ReactiveCocoa framework. It describes the differences between imperative and declarative programming. ReactiveCocoa uses a declarative and functional approach. It introduces key classes like RACSignal, RACStream, RACCommand, and RACSubject. It provides examples of how to use these classes to reactively bind UI elements together, handle events, and manipulate signals.