Size: a a a

Scala User Group

2021 May 19

ΛВ

Λнтон Войцишевский... in Scala User Group
стрелка с фиксированным входом является
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
ридер еще называется
источник

SA

Sergey Alaev in Scala User Group
Точно, спасибо. Получается, Собач хотел Parallel над ридером.
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
ага
источник

λ

λoλcat in Scala User Group
Если у тебя есть тупл (I => F[A], I => F[B], ... I => F[X])
Тебе тут надо сделать две операции:
- дистрибьют функций
- парТуплд

для дистрибьюта нет N-арных перегрузок как для .tupled/.mapN

Поэтому придется либо писать генерилку, либо делать руками.
val fn: I => F[(A, B)] = i => (fa(i), fb(i)).parTupled

Если бы был список, а не тупл, то было бы что-то типа
ff.cosequence.map(_.parSequence)
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
ну там вроде без эфок у собача
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
можно вот так
источник

Oℕ

Oleg ℕizhnik in Scala User Group
t.tupled andThen (_.parTupled)
источник

λ

λoλcat in Scala User Group
Хотя да, через лифт в клейсли можно
источник

SA

Sergey Alaev in Scala User Group
В scala3 добавили замечательный compiletime над туплом, теперь такие свертки можно делать самому, эффективно и достаточно красиво
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
ну кажется все равно будет удобнее юзать из либы функции
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
но в либе будет не 22 функции теперь
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
ура
источник

Oℕ

Oleg ℕizhnik in Scala User Group
ну есть сомнения в эффективности
источник

λ

λoλcat in Scala User Group
источник

AD

Apache DOG™ in Scala User Group
Мда, ночью голова не работает, я вертел клейсли как раз
источник

AD

Apache DOG™ in Scala User Group
Спасибо
источник

Oℕ

Oleg ℕizhnik in Scala User Group
текущая версия *: вызывает Tuples.cons, которая будет аллоцировать просто новый тюпл на каждое добавление

https://github.com/lampepfl/dotty/blob/master/library/src/scala/runtime/Tuples.scala#L180
источник

SA

Sergey Alaev in Scala User Group
Жесть. Я вот это имел в виду https://github.com/lampepfl/dotty/blob/master/library/src/scala/Tuple.scala
источник