Hacker News new | ask | show | jobs
by DougBTX 1101 days ago
> The upshot for me is that this feature adds RAII to JavaScript

That doesn’t appear to be the case, a resource can be returned, but this is block scoped. It appears to be closer to a using statement in C#.

1 comments

Based on my reading of the spec, you can't actually return a resource, since the disposal semantics need to map exactly to calling [Symbol.dispose] in a finally block at the end of the current block. Also, unlike C#, you can have multiple using statements in the same block, which will be disposed of in LIFO order.
You can have multiple using statements over the same block in C#.
You can create a resource without “using” it immediately, though.