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.

  • librecat@lemmy.basedcount.comOP
    link
    fedilink
    arrow-up
    1
    ·
    9 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.

    • anton
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      9 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.