Кто уже успел посмотреть и впечатлиться?
Какие ожидания?
Цитата: RawonaM от марта 18, 2014, 13:16
Какие ожидания?
Ничего хорошего от джавы я пока не жду.
Цитата: Чайник777 от марта 18, 2014, 13:55
Цитата: RawonaM от марта 18, 2014, 13:16
Какие ожидания?
Ничего хорошего от джавы я пока не жду.
А вы смотрели что там нового?
А зачем она нужна? Извините за нубский вопрос.
Мне не нравится путь, который Java взяла. Экосистема изначально планировалась быть простой, теперь с каждым релизом всё больше и больше бесполезных финтифлюшек и разных сиюминутных мод. В языке куча нелепостей, например в коллекциях число может быть только объектом — а всё потому что, хотели простоты VM. А теперь язык, система и библиотеки всё сложнее и сложнее, а нелепости первых версий продолжают существовать. Лучше бы исправляли имеющиеся проблемы.
А то когда они остановятся? Новые релизы нужны, чтобы язык не казался стагнирующим. Каждый новый релиз принуждает их что-то новое придумать, чтобы выпуск релиза был обоснован. Однако, когда-то ведь нужно будет остановиться? Реальные идеи просто кончатся, они не бесконечны? И будут пихать в язык разные бредни, высосанные из пальца, лишь бы получился релиз? По-моему, это уже происходит. Ява кончит уродливым франкештейном с кучей болячек...
Цитата: Алексей Гринь от марта 18, 2014, 14:47
В языке куча нелепостей, например в коллекциях число может быть только объектом — а всё потому что, хотели простоты VM.
Ну, по мне так вообще все числа с самого начала и должны были быть объектами. И вообще всё должно было быть объектами, а не как сейчас...
Цитата: Чайник777 от марта 18, 2014, 15:18
Ну, по мне так вообще все числа с самого начала и должны были быть объектами. И вообще всё должно было быть объектами, а не как сейчас...
Тут проблема в том, что для простоты они решили не вводить понятия объектов на стеке, как это было сделано в C#. Если бы понятие by-value объектов на стеке существовало, то int мог бы запросто наследоваться от Object и вести себя как любой другой кастомный объект на стеке и в то же время иметь тот функционал, который традиционно ожидается от int. Алсо, такое решение повлекло бы за собой надобность в operator overloading, для ортогональности, и опять же, изначальныая идеология языка была против усложнения языка такими прибамбасами. Так что изначально компромисс был не так плох. Однако теперь язык становился всё сложнее и сложнее, и такие компромиссы уже не актуальны, но их никто не хочет пересматривать...
Цитата: RawonaM от марта 18, 2014, 14:28
А вы смотрели что там нового?
Сейчас посмотрел - изменения положительные, но как я и думал, перевернуть моё отношение к джаве они вряд ли смогут. Всё дело в том, что язык изначально проектировался, а стандартная библиотека писалась, без этих фич и вряд ли удасться это как-то поправить в ближайшем будущем.
Не понимаю, почему они так прутся от лямбд. Простой и очевидный синтаксис? Не заметил. Вне контекста вообще непонятно, что собой символизирует выражение вида (СПИСОК ФОРМАЛЬНЫХ ПАРАМЕТРОВ) -> ВЫРАЖЕНИЕ: ни типы аргументов, ни класс генерируемого объекта, ни имя генерируемого метода нельзя определить. ІМНО, в языке без объектов-функций лябда-выражения ненужны.
Цитата: Python от марта 18, 2014, 15:45
Не понимаю, почему они так прутся от лямбд. Простой и очевидный синтаксис? Не заметил. Вне контекста вообще непонятно, что собой символизирует выражение вида (СПИСОК ФОРМАЛЬНЫХ ПАРАМЕТРОВ) -> ВЫРАЖЕНИЕ: ни типы аргументов, ни класс генерируемого объекта, ни имя генерируемого метода нельзя определить. ІМНО, в языке без объектов-функций лябда-выражения ненужны.
Сейчас мода на лямбды. Вот и прутся.
Самое весёлое, что во время войны MS-Sun, Sun выпустило статью, в которой идея предложенных MS'ом делегатов (в их MSJVM) осмеивалась; мол, не нужно, ибо всё легко решается анонимными классами. В 2014 внезапно: «анонимные классы имеют избыточный синтаксис, поэтому мы вводим революционное понятие лямбд!» Прогресс! Не прошло и 10 лет.
Цитата: Алексей Гринь от марта 18, 2014, 15:55
Сейчас мода на лямбды. Вот и прутся.
Самое весёлое, что во время войны MS-Sun, Sun выпустило статью, в которой идея предложенных MS'ом делегатов (в их MSJVM) осмеивалась; мол, не нужно, ибо всё легко решается анонимными классами. В 2014 внезапно: «анонимные классы имеют избыточный синтаксис, поэтому мы вводим революционное понятие лямбд!» Прогресс! Не прошло и 10 лет.
А почему бы не допустить крамольную мысль, что одни люди писали ту статью и совсем другие сделали лямбды сейчас?
Да, но хоть общий стиль синтаксиса сохранили бы. Почему, например, в JS анонимные функции не выглядят как посторонний элемент из другого языка? А в Джаву (язык со статической типизацией) механически впаяли элемент языка с динамической типизацией, забыв и о существовании классов, и о типах, и о многом другом.
Недавно видел дизайн-документ авторов Java, в которых они стандартизируют возможное включение valuetype-объектов в Java. Довольно длинный и серьёзный документ, так что вероятно собираются включить в новых версиях. Будет смешно, если valuetype будут, а имеющиеся неортогональности связанные с их отсутствием в прошлых версиях языка ради совместимости не исправят. Java получится большим аморфным куском г-на.