In something like C++ you could create a scope like so:

{
	// Do something neat here
}

I was wondering about having or maybe even requiring a scope keyword, which might look like this:

scope
{
	// Do something neat here
}

This seems even more relevant in an indentation sensitive language like python:

scope:
	pass

Interested to hear any opinions, TIA.

  • @[email protected]OP
    link
    fedilink
    14 months ago

    To be honest, the only use case I really thought of was something like unlocking a mutex at the end of a scope or maybe a file.

    • @[email protected]
      link
      fedilink
      2
      edit-2
      4 months ago

      In that case managed languages like python and java combine that functionality with try blocks. This is generally called try with resources.
      C# has the using keyword that just uses local scope.

      The commonality between them is declaring which resource is managed, not just everything is a scope. Imagine you wanted to manage one resource and return another.