А скалисты тут есть?
От: scf  
Дата: 28.03.24 08:00
Оценка:
Мне нравится ковырять новые фичи scala3, а поделиться и обсудить не с кем, в реддите запустение, в телеге одни говноеды. Или может где-то есть адекватное коммьюнити?
Re: Каких программ вам не хватает?
От: Miroff Россия  
Дата: 28.03.24 08:18
Оценка: :))) :)
Здравствуйте, scf, Вы писали:

scf>Мне нравится ковырять новые фичи scala3, а поделиться и обсудить не с кем, в реддите запустение, в телеге одни говноеды. Или может где-то есть адекватное коммьюнити?


С замечанием про телегу категорически согласен. Насчет адекватного комьюнити не уверен. Из дюжины программистов на Scala, пятеро слабо понимают что они вообще делают, пятеро ударились в архитектурную астронавтику и раздули ЧСВ под потолок, а оставшиеся двое тянут работу за остальных десятерых и им не до общения.
Re: А скалисты тут есть?
От: novitk США  
Дата: 28.03.24 18:49
Оценка: +3
Здравствуйте, scf, Вы писали:

scf>Мне нравится ковырять новые фичи scala3, а поделиться и обсудить не с кем, в реддите запустение, в телеге одни говноеды. Или может где-то есть адекватное коммьюнити?


Про комьюнити не знаю, но тут можно обсудить на троих. IMHO язык очень удачный, но пациент скорее мёртв, чем жив.
Отредактировано 28.03.2024 20:28 novitk . Предыдущая версия .
Re[2]: Каких программ вам не хватает?
От: SkyDance Земля  
Дата: 28.03.24 19:02
Оценка:
M>С замечанием про телегу категорически согласен. Насчет адекватного комьюнити не уверен. Из дюжины программистов на Scala, пятеро слабо понимают что они вообще делают, пятеро ударились в архитектурную астронавтику и раздули ЧСВ под потолок, а оставшиеся двое тянут работу за остальных десятерых и им не до общения.

Как будто с другими языками это как-то иначе обстоит.
Re[3]: Каких программ вам не хватает?
От: vsb Казахстан  
Дата: 29.03.24 01:15
Оценка: +1
Здравствуйте, SkyDance, Вы писали:

SD>Как будто с другими языками это как-то иначе обстоит.


Думаю, с го не так. Там все 12 педалят код.
Re[3]: А скалисты тут есть?
От: Miroff Россия  
Дата: 29.03.24 03:07
Оценка:
Здравствуйте, SkyDance, Вы писали:

SD>Как будто с другими языками это как-то иначе обстоит.


На мейнстримных языках больше разработчиков и людей хватает для создания нормального комьюнити.
Re[2]: А скалисты тут есть?
От: scf  
Дата: 29.03.24 11:33
Оценка:
Здравствуйте, novitk, Вы писали:

N>Про комьюнити не знаю, но тут можно обсудить на троих. IMHO язык очень удачный, но пациент скорее мёртв, чем жив.


А давайте. Я бы сказал, что пациент жив и развивается, просто функциональный хайп вокруг него угас, а нового (пока) нет.

Для затравки — как вы используете inline? Я не очень люблю метапрограммирование из-за невозможности отладки, сложности написания и странных багов, но конкретно inline позволяет писать интересные абстракции без оверхеда.

Например, переписать scala.util.chaining в более любимый мне по котлину let и also. Кто не знаком, это очень простые и очень полезные операции для структурирования кода. Например:
"hello".let(_ + " world").also(println)
Компилируется в
String a$proxy1 = "hello world";
Predef$.MODULE$.println((Object)a$proxy1);

Или написать foreach, который можно использовать везде, а не рисовать руками while по индексу в критичном коде.

  extension [A](it: IterableOnce[A]) {
    inline def foreach2(inline f: A => Unit): Unit = inline it match
      case is: IndexedSeq[A] =>
        var i = 0
        val len = is.size
        while i < len do
          f(is(i))
          i += 1
      case _ =>
        val i = it.iterator
        while i.hasNext do
          f(i.next())



Благодаря inline match, для индексированных коллекций foreach2 скомпилируется в простой цикл по индексу, а для Seq будет instanceof.
Re: А скалисты тут есть?
От: Слава  
Дата: 29.03.24 11:50
Оценка:
Здравствуйте, scf, Вы писали:

scf>Мне нравится ковырять новые фичи scala3, а поделиться и обсудить не с кем, в реддите запустение, в телеге одни говноеды. Или может где-то есть адекватное коммьюнити?


Как это "одни говноеды". Там же было довольно активное сообщество. Может, вы патриот просто? Там их недолюбливают.
Re[2]: А скалисты тут есть?
От: scf  
Дата: 29.03.24 11:59
Оценка:
Здравствуйте, Слава, Вы писали:

С>Как это "одни говноеды". Там же было довольно активное сообщество. Может, вы патриот просто? Там их недолюбливают.


Активное, да, но бесполезное для каких-либо обсуждений. Можно получить ответ на тривиальный вопрос или конкретную проблему (и то есть шанс, что выдадут неверную информацию или направят в бибиотеку с 15 звездами и кучей неочевидных недостатков). У кого есть знания и опыт, делятся им крайне неохотно. У кого нет знаний и опыта, делают вид, что он у них есть. И в целом обсуждения направлены не на обмен опытом и знаниями, а на самоутверждение. Говноеды короче)
Re[4]: Каких программ вам не хватает?
От: SkyDance Земля  
Дата: 29.03.24 16:05
Оценка: :)
vsb>Думаю, с го не так. Там все 12 педалят код.

А. Да, точно. Из них 10 педалят код, который тем самым двум нужно успеть удалить (пока все не сломалось) и написать как надо.
Re[3]: А скалисты тут есть?
От: novitk США  
Дата: 29.03.24 20:23
Оценка: +1
Здравствуйте, scf, Вы писали:

scf>А давайте. Я бы сказал, что пациент жив и развивается, просто функциональный хайп вокруг него угас, а нового (пока) нет.

Фиг знает, но не вижу энтузиазма. У нас все на двойке и переход на тройку сильно затруднен, а моя контора один из крупнейших пользователей языка.

scf>Для затравки — как вы используете inline? Я не очень люблю метапрограммирование из-за невозможности отладки, сложности написания и странных багов, но конкретно inline позволяет писать интересные абстракции без оверхеда.

Не использую. В плюсах тоже не использовал, возможно в силу специфики — я использую фундаментальные и числодробительные библиотеки, а не пишу.

scf>Например, переписать scala.util.chaining в более любимый мне по котлину let и also. Кто не знаком, это очень простые и очень полезные операции для структурирования кода. Например:

scf>"hello".let(_ + " world").also(println)
pipe использую, но синтаксически предпочел бы |>, как в F#. "Let/also" имхо не интуитивно.
Другое дело, что в скале оно так не нужно, так как операции над коллекциями сделаны через методы и сцепляются через точку.

scf>Или написать foreach, который можно использовать везде, а не рисовать руками while по индексу в критичном коде.

Честно говоря я предпочту рисовать руками и не забивать голову усложненной семантикой foreach. У тебя ведь итератор никуда не делся и ты просто помогаешь компилятору с unboxing в частном случае.
Однако подобная техника имеет право на жизнь. Известный мне пример в стандартной библиотеке здесь. Однако от него отказались в следующих версиях выделив search в SeqOps и используя обычный adhoc полиморфизм.
Отредактировано 30.03.2024 18:46 novitk . Предыдущая версия .
Re[4]: А скалисты тут есть?
От: scf  
Дата: 30.03.24 05:37
Оценка:
Здравствуйте, novitk, Вы писали:

N>Фиг знает, но не вижу энтузиазма. У нас все на двойке и переход на тройку сильно затруднен, а моя контора один из крупнейших пользователей языка.


Грустно, тройка уже совершенно другой язык, более мощный и удобный.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.