     return { x in g(f(x)) }
 }
 
-private func _emptyOutput<State: StateType, Input: InputType>(toState: State?) -> (State, SignalProducer<Input, NoError>)?
+private func _toNextMapping<State: StateType, Input: InputType>(toState: State?) -> (State, SignalProducer<Input, NoError>)?
 {
     if let toState = toState {
         return (toState, .empty)

    /// Basic state-transition function type.
    public typealias Mapping = (State, Input) -> State?

    /// Transducer (input & output) mapping with `SignalProducer<Input, NoError>` as output,
    /// which can wrap heavy tasks and then emit new "input" values
    /// for automatic & continuous state-transitions.
    public typealias NextMapping = (State, Input) -> (State, SignalProducer<Input, NoError>)?


    ///
    public convenience init(state initialState: State, input inputSignal: Signal<Input, NoError>, mapping: Mapping)
    {
        self.init(state: initialState, input: inputSignal, mapping: _compose(_toNextMapping, mapping))
    }

    ///
