Pull to refresh

Comments 29

Не знаю чем «вдохновлялись» создатели блоков текста, но если Скалой (а там это реализовано точно также), то хочется, чтобы вдохновились еще сильнее и сделали уже и интерполяцию.
Ага. Самое смешное, что и в груви это реализовано сто лет как, и тоже вполне удобно. И почему бы не срисовать с хороших примеров — не ясно.
наверно всякие обсуждения, тестирование, регрессия. я видел в java journal давно даже показывали как добавить в язык свои конструкции чтобы их компилировал javac и там делали «Elvis Operator ?:». Казалось бы что мешает вот так прямо взять и добавить это в язык? видимо процессы

Чем и откуда вдохновляются бывает написано в самих JEPах, причём с описанием того, как "это было бы в нашем случае": как поддерживать, на что влияет, как тестировать и т.д. и т.п. (это ответ и комментаторам ниже).


Про интерполяцию упомянуто, что это отдельная тема. Сначала запилят одно, потом итеративно другое. Собственно, и релизный цикл этому способствует.

Да, там и описано. Точнее, там не написано чем вдохновлялись, там написано почему они не скопировали один в один из других языков:

По словам Брайана Гетца:

Многие люди считают, что Java должна сделать многострочные строковые литералы такими же, как в Swift или Rust. Однако подход «просто делай то, что делает язык X» по сути своей безответственен; почти каждая особенность каждого языка обусловлена ​​другими особенностями этого языка. Вместо этого нужно узнать, как работают другие языки, оценить компромиссы, которые они выбрали(явным и неявным образом), и спросить, что можно применить к ограничениям языка, который у нас есть, и ожиданиям пользователей в нашем сообществе.


Для JEP 326 (необработанные строковые литералы) мы рассмотрели многие современные языки программирования и их поддержку многострочных строковых литералов. Результаты этих опросов повлияли на текущее предложение, например, на выбор трех «символов для разделителей(хотя были и другие причины) и признание необходимости автоматического управления отступами.
UFO just landed and posted this here
Не знаю чем «вдохновлялись» создатели блоков текста
Ну раз java принадлежит теперь ораклу, то вдохновлялись, вестимо, оракловым диалектом SQL ;)
Ну раз java принадлежит теперь ораклу


Теперь? Уже вроде несколько лет как.

Интересно почему предидуший jep отменили. Выглядело неплохо…

Автор не стал переводить раздел "Альтернативы", а зря. Там подробнее описывается опыт с Raw String Literals.


Я не переводчик, но вкратце: что-то у них там не зашло с разделителями строки в её содержимом. Они хотели сделать такой случай сразу неэкранируемым, но этот вариант "плохо бы поддерживался в будущем".

Не только в Python «так само», в JVM языках Groovy и Scala также. А еще, судя по комментариям, в C# и Swift. Просто в случае с jvm-языками, можно посмотреть как реализовано технически.
С каждым релизом Java все больше становиться похожа на C#.
Рад. Это напоминает ситуацию с iOS и Android. Изначально один был скопирован с другого, теперь черпают друг у друга фичи. Конечный пользователь выигрывает в любом случае.

На мой взгляд проблема именно в том что идёт копирование фич, а самостоятельное развитие языка крайне неспешно. Позиция догоняющего не очень хороша. В котлине например сейчас экспериментируют с инлайн классами которых вроде бы нет в других языках (не уверен на 100%)

Я считаю, что брать лучшие практики — хорошая стратегия развития. Описание inline class Котлина напоминает делегат.
В котлине например сейчас экспериментируют с инлайн классами которых вроде бы нет в других языках (не уверен на 100%)
Похоже на value class в Скале.
value class немного костыльные и не всегда работают, поэтому в скале работают над новым механизмом — opaque types
Будет скорее всего в 2.14, возможно в 2.13 под фича флагом
UFO just landed and posted this here
Остаётся её только сделать для Enterprise Edition, а для Standard Edition и Community закрыть лицензионным соглашением…
Выглядит отлично. Жаль, что LTS будет нескоро.
Спасибо за статью! Интересно было почитать
Sign up to leave a comment.

Articles