News for hackers. Stuff that matters.
Re:Better Java – Resources for Writing Modern Java by adevine on Saturday September 19, 2015 @10:19PM (#10246335)
Yeah, Optionals came from other languages, not originally Java.

IMO the problem with Optionals is that they'll never suffice unless they are part of the language itself, like in Swift. As this article pointed out, Optionals aren't supported in any existing APIs, so you still have to do a ton of null-checking everywhere. And there is nothing that guarantees an Optional reference itself can't be null, which is why you really want language-level support.

Re:Better Java – Resources for Writing Modern Java by lomnakkus on Sunday September 20, 2015 @12:22AM (#10246552)
I'm probably being a bit too pedantic here, but strictly speaking they don't need to be part of the language at all. You just need basic support for (generic/parametric) algebraic data types.

For example, Haskell has Maybe which is not part of the language nor treated specially by the compiler in any way. It is part of the Prelude (think "standard library"), so that (basically) all libraries can agree on what "Maybe a" means.