перекочевал на хабр. https://habr.com/ru/company/funcorp/blog/558412/
Может, помимо тех что уже в комментариях, у кого найдутся еще какие значимые контраргументы ?
Тут немного обсуждали: https://t.me/kotlin_lang/237470 (в теории можно листать реплаи) У меня есть своя портянка текста, которая не сходится с тем, что тут в чате было, могу и сюда скинуть.
Будет интересно почитать
(примечания: субъективщина, писалось под одного человека, не вычитывалось и всё такое, возможно тут можно спросить мнения от разработчиков языка и оно будет интереснее) Ну т.е. с чем я согласен с автором: * Котлин действительно ощущается как проприетарный продукт. Да, сорцы публичные, да, формально в комитете есть не только JB, но и другие ребята. Но если в случае Скалы я готов предположить, что за этим не должна стоять целая организация для того, чтобы язык жил, то в случае Котлина сложно сказать, что будет, если JB решит, что не очень много денег приходит из-за Котлина и для догфудинга им нужно что-то принципиально другое. То, что без Идеи Котлин почти не существует (тот же LSP еле-еле поддерживают рандомные люди) явно не помогает этому образу. * Проблема зависимости на дизайн Джавы в какой-то степени действительно существует. Ввиду обещания красивого интеропа, ты не можешь просто забить на Джаву и идти своим путём, все фичи существуют строго в призме фич Джавы, кроме случаев, когда на обещание интеропа просто забивают (те же корутины или более продвинутые типы) С чем я не согласен с автором: * Призма насколько проблема зависимости от Джавы критична. 1) Да, все твои фичи смотрятся через призму Джавы. Но это не означает, что всё безнадёжно. Возможность депрекейта каких-то фич насколько помню в дизайн заложили почти сразу (примечание - я не помню, чтобы убивали из языка уже что-то кроме мелких функций). Если джавовое решение окажется мощнее и лучше - в язык можно вставить джавовое решение и задепрекейтить исходное. Если не окажется - возможно прокидываешь мосты для интеропа и всё. 2) Better Java != Java с парой доп фич. Джава с парой доп фич - это Груви. Вот там выглядит, что действительно стараются, чтобы весь джавовый код один в один работал в Груви as is. Котлин так не делает. Come on, они просто взяли и полностью пересобачили концепт статиков во что-то своё, о каком соответствии один-к-одному идёт речь? Ну и тот снова к слову про мосты - в язык заложено как общаться с джавовой статикой, в язык заложили как компаньоны выставлять в джаву как статику. Т.е. джавовой фичи нету, а интероп есть 3) Вот щас бы в текущем виде брать instanceof как хороший пример. Ну тип да, если надо конвертировать код, то он выглядит иначе. So what? Ты скорее всего в другой язык переходишь, чтобы код выглядел иначе, какой ещё толк переходить? * Джава может закрыть разницу Да и нет. Джава может обогнать в определённых фронтах, например я почти уверен, что Котлин будет какое-то время отставать с полноценным паттерн матчингом, они немного не сошлись с дизайном со старта, чтобы хорошо успевать (примечание - я не эксперт, могу ошибаться). С другой стороны - у тебя есть фичи, закрытые в Котлине, которые чтобы починить в Джаве надо ломать язык. Nullability, деление на Mutable/Read-only collections, final как second-class citizen, void который полностью вне адекватной системы типов и ещё какое-то количество проблем - это то, что починено (со звёздочкой в виде интеропа) в Котлине и просто не может быть пофикшено в Джаве, если только они не сменят концепт, как язык будет эволюционировать.
Насчет того, что скала будет жить без организации - это я бы поспорил. Есть история с груви, довольно популярным языком, который сдулся почти моментально как только прекратилась поддержка со стороны организации. Скала выживет, потому что на нее уже много что завязано, но ей уже и лет сколько.
Готов предположить, не прямо утверждаю :)
Ветка с форума если что: https://discuss.kotlinlang.org/t/is-kotlin-an-evolutionary-dead-end/21854
а кто, кстати, груви поддерживал?
а, ого. видать это очень давно было :)
Не очень, поддержка прекратилась примерно когда котлин стартанул. В 2016 что ли...
ну я тогда на втором, кажется, курсе учился и не особо шарил чё как в индустрии происходит :))
А разве за скалой не стоит Lightbend?
Groovy попал в Apache, так что с поддержкой apache там версия 3 вышла и фиксы прилетают. Но бас-фактор там 1-2 человека буквально, без которых не будет груви. Что будет с Kotlin без поддержки JB? Ничего хорошего, но язык не умрет, гугл уже плотно завязался, да и сам JB :)
Не, стоит конечно, просто местами ощущается, что Одерски, студентов и силы опенсорса в случае Скалы может и хватить для жизни и чуть более медленного процветания. Но это уже немного оффтопик для чата, да
Со стороны кажется, что без Lightbend у скалы басфактор станет равен единице
Да, я слежу. У меня теплые чувства к груви по историческим причинам. До котлин на нем писал. Но там штат в разы если не на порядок сократился. Но груви тоже не молодой. Да, на старте без поддержки компании не проживешь, но котлин уже сейчас достаточно широко используется, чтобы гарантировать поддержку (хотя и не развитие) без JB
Так а он разве не из полутора землекопов состоит? Я себе примерно представляю, сколько денег JB вкладывает в котлин, это никаким Лайтбендам не снилось
ну я к тому, что даже учитывая что их там десяток человек, кроме них останется один Одерски (и его студенты) Ну ладно, может быть ещё Твиттер немного
Это уже офтоп, но твитер разрабатывает скалу, а не на скале?
я точно помню, что у них есть пара-тройка крутых людей, которые (по крайней мере раньше) пилили и саму скалу и либы к ней
Что я прочитал...
Нет слов, одни стикеры!
А, там на оригинальную статью уже все ответили https://www.reddit.com/r/java/comments/ndwz92/can_i_get_some_reasons_to_use_java_instead_of/gyl0cbe?utm_source=share&utm_medium=web2x&context=3
Обсуждают сегодня