> -----Original Message-----
> From: es-discuss [mailto:es-discuss-boun...@mozilla.org] On Behalf Of Isiah
> Meadows
> Sent: Saturday, December 31, 2016 8:34 AM
> To: J Decker <d3c...@gmail.com>
> Cc: Raul-Sebastian Mihăilă <raul.miha...@gmail.com>; es-discuss <es-
> disc...@mozilla.org>
> Subject: Re: Resource management
> 
> Not enough. Not looking for an `await` replacement, but something closer to
> Python's `with` statement or Java's `try`-with-resources.
> Or, if you want something
> 
> Python:
> https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpreshin
> g.com%2F20110920%2Fthe-python-with-statement-by-
> example%2F&data=02%7C01%7Cron.buckton%40microsoft.com%7C9767f9fc
> 4f8a4e3489b608d4319ad95d%7C72f988bf86f141af91ab2d7cd011db47%7C1%7
> C0%7C636187988525799540&sdata=BbbqX753QBWZaGwXqqmdWbX7sOvdp
> 3VADi%2FLjqpf2%2Fs%3D&reserved=0
> Java:
> https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.o
> racle.com%2Fjavase%2Ftutorial%2Fessential%2Fexceptions%2FtryResourceC
> lose.html&data=02%7C01%7Cron.buckton%40microsoft.com%7C9767f9fc4f8
> a4e3489b608d4319ad95d%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0
> %7C636187988525799540&sdata=wVj3VjrOri80tOmnK%2Bvyoe2e7rb2Ft%2B
> wHv%2BkjOk%2FsFQ%3D&reserved=0
> 
> JavaScript's idioms tend towards Python, Java, C#, etc. in how resources are
> handled, so things like Ruby's `begin`-`ensure` wouldn't work as well (that
> was where I got my generator workaround from, actually, and as you can
> see, it's not exactly very obvious).
> -----
> 
> Isiah Meadows
> m...@isiahmeadows.com

Speaking of C#, the C# variant of this is the `using` statement: 
https://msdn.microsoft.com/en-us/library/yh598w02.aspx

I'm not advocating `using` as a new keyword for ES, given it's not already 
reserved and would have ASI hazards. The Java "try-with-resources" seems to be 
a fairly flexible syntax, though its adoption in ES would be predicated on some 
well-defined heuristic for determining which method to be used, given that ES 
does not have interfaces (and thus no System.IDisposable or 
java.lang.AutoCloseable). That would likely be an existing method name, such as 
"return" as used in iterators today, or a built-in Symbol which could be 
retrofit onto %IteratorPrototype%.

Ron
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to