ACSignal
ACSignal is a lightweight abstraction used in reactive programming libraries to model an asynchronous sequence of values over time. An ACSignal may emit zero or more values, followed by a completion event or an error. Signals decouple producers from consumers: the code that creates a signal does not need to know which code will handle its emissions. Signals can deliver events synchronously or asynchronously, depending on configuration or the scheduler in use.
Subscribers attach handlers by subscribing to the signal. A subscription provides callbacks for next values, errors,
ACSignal is used in various reactive programming ecosystems. It is conceptually similar to signal types in