It's possible that this pattern matching feature can be decoupled into a separate proposal though. You'd need a way to call an iterator but only receive specific matches and reyield the rest.
On Tue, Mar 15, 2016 at 6:05 PM, Sebastian Markbåge <sebast...@calyptus.eu> wrote: > > Perhaps if there was a way to wrap any arbitrary expression with a >> generator that captured any yielded values and allowed resumption by >> calling .next(), then you could accomplish this without inventing new >> try-catch syntax? >> > > Yea, except you need to be able to nest them inside each other as well. > > If a generator captured any yielded values, then it would be yielded at > the inner most caller. > > You could handle this the way JavaScript does exception handling by > "rethrowing" errors it didn't handle. I.e. if you see a yield that you > don't recognize you would re-yield it. > > In my use case I can have many nested handlers and I want to handle a > particular type at the top of the stack. If you have to conditionally > "reyield" all the way up there, you miss out on potential important > optimizations. > > This is related to "enums" and "pattern matching" too. The current pattern > matching proposal also doesn't have any optimizations either. > > > >
_______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss