Size: a a a

Scala User Group

2020 January 31

I

Ilya in Scala User Group
Mikhail
акка использует один тредпул насколько я помню, но ты же в курсе, что в рамках одного тредпула может быть > 1 физического треда? а вобще система исполнения акторов может делать, что угодно - до тех пор, пока соблюдается очередность в рамках отдельно взятого актора, иначе модель перестанет быть акторной)
При создании актора можно указать тредпулл. (Просто примечание)
источник

I

Ilya in Scala User Group
dima
для конфига я думал о тайпсейф конфиге, для бд - о квилле
Квил довольно своеобразный. Я последние время стараюсь его не использовать в проектах. Тотже doobie получше будет
источник

AZ

Alex Zhukovsky in Scala User Group
object SalaryRaiser {

 private def promotion(salaries: List[Double], promotionFunction: Double => Double): List[Double] =
   salaries.map(promotionFunction)

 def smallPromotion(salaries: List[Double]): List[Double] =
   promotion(salaries, salary => salary * 1.1)

 def greatPromotion(salaries: List[Double]): List[Double] =
   promotion(salaries, salary => salary * math.log(salary))

 def hugePromotion(salaries: List[Double]): List[Double] =
   promotion(salaries, salary => salary * salary)
}

Какой потрясающе бессмысленный пример для higher order functions
источник

AZ

Alex Zhukovsky in Scala User Group
Они переписывали этот код
object SalaryRaiser {

 def smallPromotion(salaries: List[Double]): List[Double] =
   salaries.map(salary => salary * 1.1)

 def greatPromotion(salaries: List[Double]): List[Double] =
   salaries.map(salary => salary * math.log(salary))

 def hugePromotion(salaries: List[Double]): List[Double] =
   salaries.map(salary => salary * salary)
}

и умудрились сделать больше бойлерплейта, а не меньше.
источник

AZ

Alex Zhukovsky in Scala User Group
источник

AZ

Alex Zhukovsky in Scala User Group
Вопрос - а почему такие хреновые примеры на оффсайте?
источник

AZ

Alex Zhukovsky in Scala User Group
или туда не надо смотреть, а надо смотреть куда-то еще?
источник

DM

Daniel Matveev in Scala User Group
а что здесь плохого? и что должно было стать короче?
источник

DM

Daniel Matveev in Scala User Group
Alex Zhukovsky
Они переписывали этот код
object SalaryRaiser {

 def smallPromotion(salaries: List[Double]): List[Double] =
   salaries.map(salary => salary * 1.1)

 def greatPromotion(salaries: List[Double]): List[Double] =
   salaries.map(salary => salary * math.log(salary))

 def hugePromotion(salaries: List[Double]): List[Double] =
   salaries.map(salary => salary * salary)
}

и умудрились сделать больше бойлерплейта, а не меньше.
здесь нет "обобщенной" функции
источник

AZ

Alex Zhukovsky in Scala User Group
Daniel Matveev
а что здесь плохого? и что должно было стать короче?
зачем этот promotion?
источник

NV

Nikita Vilunov in Scala User Group
Показать как можно самостоятельно объявлять higher-order function?
источник

DM

Daniel Matveev in Scala User Group
бывает так что салари у тебя в одном месте есть, а функция для вычисления задается в отдаленном
источник

DM

Daniel Matveev in Scala User Group
к сожалению было бы неудобно демонстрировать это на одностраничном примере в доке
источник

DM

Daniel Matveev in Scala User Group
также наличие этой фишечки не обязывает пихать ее везде в коде
источник

DM

Daniel Matveev in Scala User Group
иногда оно удобно, иногда нет
источник

AZ

Alex Zhukovsky in Scala User Group
Nikita Vilunov
Показать как можно самостоятельно объявлять higher-order function?
но я не буду их писать если не понял "зачем". И этот пример нифига не показывает, зачем так делать
источник

s

saksonov 👀 in Scala User Group
Alex Zhukovsky
но я не буду их писать если не понял "зачем". И этот пример нифига не показывает, зачем так делать
Ты хочешь поконтрибьютить в доку или что
источник

DM

Daniel Matveev in Scala User Group
Alex Zhukovsky
но я не буду их писать если не понял "зачем". И этот пример нифига не показывает, зачем так делать
def map[A,B](F: F[A], f: A => B): F[B]
источник

NV

Nikita Vilunov in Scala User Group
Alex Zhukovsky
но я не буду их писать если не понял "зачем". И этот пример нифига не показывает, зачем так делать
Вероятно, при изучении нового языка одна изолированная фича языка не несет никакого смысла. Смысл появляется только когда ты комбинируешь полученные знания из нескольких глав, потихоньку понимая зачем тебе может понадобится недавно приобретенное знание какой-то конструкции языка
источник

VS

Valeriy Shinkevich in Scala User Group
λoλcat
Вторая версия будет в опенсурсе?
говорили, что нет, хотя, это было в октябре
источник