Чем дальше, тем хуже, компромисные "консистентные" обратно совместимые решения увеличивают сложность языка непропорционально приносимой пользе. А так ли нужно было импользовать именно switch а не какой-нибудь match?
Мне одному кажется, что поддержка совместимости приносит больше вреда, чем пользы? Нужно сделать голосование "Кому нужна совместимость в Java?" и проанализировать результаты.
Моё скромное мнение что с точки зрения имплементации новых фич в Java не коректно рассматривать или критиковать их имплементацию в языке Scala в принципе, так как Scala код компилитса сначало в Java и в основном слабости имплементации сильно завязанны на ограниченности самой Java. Если Java в конце концов возмёт на вооружения pattern matching то тогда Scala либо оптимизируют свою имплементацию либо будут критиковать ту что в Java, а может то и другое :) (и будут по своему правы)
Чем дальше, тем хуже, компромисные "консистентные" обратно совместимые решения увеличивают сложность языка непропорционально приносимой пользе. А так ли нужно было импользовать именно switch а не какой-нибудь match?
Просто шикарно и интересно, а про консистентность постоянного ущерба консистентности - зачет)
удобство - совместимость - консистентность и единорог внутри :)
why Haskell was not looked at?
В "хипстерском" языке, в последнем выражении, если оно должно возвращаться из блока, просто не ставится точка с запятой - и проблемы нет.
Мне одному кажется, что поддержка совместимости приносит больше вреда, чем пользы? Нужно сделать голосование "Кому нужна совместимость в Java?" и проанализировать результаты.
Не одному. Необходимость поддержки легаси привела с++ к тому чем он является сейчас -_-.
Соглашусь. Пора уже поступить как python 3 и с какой то версии отбросить легаси.
Есть множество языков, не совместимых с Java: Kotlin, Scala, Swift, Go, you name it. Зачем в их стройные ряды входить самой Java - не очень понятно.
Что только не выдумают, лишь бы на Rust не писать :)
Моё скромное мнение что с точки зрения имплементации новых фич в Java не коректно рассматривать или критиковать их имплементацию в языке Scala в принципе,
так как Scala код компилитса сначало в Java и в основном слабости имплементации сильно завязанны на ограниченности самой Java.
Если Java в конце концов возмёт на вооружения pattern matching то тогда Scala либо оптимизируют свою имплементацию либо будут критиковать ту что в Java, а может то и другое :) (и будут по своему правы)
ну котлин же тоже на jvm выполняется, но скаловских проблем у него нет (конечно, есть свои)