From m1k0.register at gmail.com Wed Apr 19 04:54:08 2017 From: m1k0.register at gmail.com (Miko Register) Date: Wed, 19 Apr 2017 04:54:08 -0000 Subject: JEP 302 _ Java is a language with one big goal - easy to read Message-ID: Java is a language with one big goal - easy to read. Now, I see It is forcing to break this main goal with introducing underscore [ _ ] (also called underline, underbar, low line, or low dash) (sorry for my English) I know, that exists some quirk languages with quirk statements like scala, groovy, regexp, perl. Some javascript libs very like "cool" characters like jQuery, even some specially created for character underscore - underscore.js! Regexp has some special meaning and I accepted this - this is not Java - like underscore under SQL. For compatibility reason, Java has some strange constructions like static > T max(Collection coll) compatibility reason is the strong reason. If I see technology with underscore usage I see undone work or internal thighs. Underscore is very hard to see - look at comparison jQuery.js vs undescore.js Old people cannot see this character. Maybe many of us can't see this character now because of our age. If my IDE underscores the whole line of bad code, underscoring align with this special character for jep 302 completely hiding the meaning of this character. This underscore opening the can of warms (Pandora's box)... &*^v^==//==%$#@))((! and   __DATE__, ? DOUBLE LOW LINE for two parameters,... I remember that Elvis Operator was bad and because of that was introduced Optional<>. Underscore has much more bad things. We have in Java language some resolving for special meaning for special cases, like Optional, Void, etc. Maybe we should introduce something like "Any" class or something which is can be easy to read. Brian Goetz, Mark Reinhold - please help with this situation of breaking the main goal of Java language - readability.