scan(::_:)

func scan<S, U>(_ seq: S, _ initial: U, _ combine: (U, S.Iterator.Element) -> U) -> [U] where S : Sequence