Java 7 has introduced automatic resource management:
try (BufferedReader br = new BufferedReader(new FileReader(path))) {
return br.readLine();
}
This will work with any class that implements java.lang.AutoClosable.
I know there are several examples of doing automatic resource management in Scala, including one demonstrated by Martin Odersky.
Is there any plan to add a language-level resource management to Scala, similar to Java’s try(...) { }?
In scala this can be added as a library. As a example scala-arm (https://github.com/jsuereth/scala-arm) from jsuereth:
Imperative Style:
Monadic style
On the github page are some more examples