nl_tokens: Reduce the items in an iterable down to a single instance of initial type yielding each step of the reduction
pl_tokens: function scan ( predicate , initial ) { return function ( iterable ) { return __asyncGenerator ( this , arguments , function * ( ) { var e_7 , _a ; let index = 0 ; let prevState = initial ; <mask> { for ( var iterable_5 = __asyncValues ( iterable ) , iterable_5_1 ; iterable_5_1 = yield __await ( iterable_5 . next ( ) ) , ! iterable_5_1 . done ; ) { const value = iterable_5_1 . value ; prevState = yield __await ( Promise . resolve ( predicate ( prevState , value , index ) ) ) ; yield yield __await ( prevState ) ; index = index + 1 ; } } catch ( e_7_1 ) { e_7 = { error : e_7_1 } ; } finally { try { if ( iterable_5_1 && ! iterable_5_1 . done && ( _a = iterable_5 . return ) ) yield __await ( _a . call ( iterable_5 ) ) ; } finally { if ( e_7 ) throw e_7 . error ; } } return yield __await ( prevState ) ; } ) ; } ; }