LVTI Style Guide
Stuart Marks
stuart.marks at oracle.com
Fri Mar 23 21:35:10 UTC 2018
On 3/23/18 3:34 AM, Kevin Bourrillion wrote:
> This document is amazing and should emulated for every future language feature.
You've picked up on the idea that we've been kicking around internally, which is
to publish style information about a feature at more-or-less the same time as
the feature is delivered.
We didn't do this for Java 8, for example. Things eventually settled down, with
most people preferring short expression lambdas, refactoring longer bits of code
into methods and using method references, etc. But I still see people trying to
replace abstract classes with interfaces and default methods, and I still see
people misusing Optional. Publishing some style-related information on those
topics earlier probably would have helped things to settle down sooner.
Most design discussions of language features seems to involve dialog of the form,
"Is it reasonable to use it this way?"
"Well that depends."
"What if you did it that other way?"
"That's probably wrong. Don't do that."
"How about this way instead?"
"Yes, it works in that case, because...."
Eventually this could lead to style guidelines, but usually it just bounces
around the mailing list and is forgotten. Occasionally some enterprising soul
will dig things out of the mailing list and post them on Stack Overflow, but
that's pretty rare, and in any case such information is still relatively
inaccessible.
So yes, the idea is to try to get usage guidelines out there at the same as the
feature is delivered. Can't promise anything, but it's certainly something I'm
advocating.
Same for design rationale, but that's a different topic.
s'marks
More information about the amber-dev
mailing list