There are many nifty features that Java could have but doesn't. Why, though, how hard can it be to implement them? Why don't they just...
- let us add fields to records?
?.for null-safe member selection?
- add extension methods?
- remove the need for semicolons?
- introduce immutable collections?
Optionalinto a proper monad?
After this talk, you'll know. And have gained insight into the deliberations behind the decisions that evolve Java and why nothing can "just" be implemented.
I also embedded them below. If they're focussed, you can navigate with arrow keys or swipes (they're two-dimensional, with chapters on the horizontal axis and chapter content layed out vertically). Use Page Up/Down for linearized order and ? for more shortcuts.
Here's a good recording of the talk. I hope you'll like it.
I gave this talk a few times before. See below for links to slides (as they were at that very event), videos, and other information.