Size: a a a

Scala User Group

2020 November 03

ЮБ

Юрий Бадальянц... in Scala User Group
Новый модуль пилить не надо, ты можешь по месту обернуть.
источник

AK

Alexey Kuzin in Scala User Group
Но в ридми неплохо было бы поправить, там очень мутно написано насчёт кастомных контейнеров
источник

M

Mikhail in Scala User Group
Юрий Бадальянц
@rudogma Почему вот так работает:
https://scastie.scala-lang.org/LMnet/GfwOmagjSOe0e7jt4yAHag/1
А если добавить extends AnyVal в Ops — то не работает?
https://scastie.scala-lang.org/LMnet/GfwOmagjSOe0e7jt4yAHag/2

При этом в тестах вроде все опсы ньютайпов сделаны с AnyVal
(private val value: Type[A]) extends AnyVal - опсы надо на ньютайп вешать
источник

ЮБ

Юрий Бадальянц... in Scala User Group
Alexey Kuzin
Но в ридми неплохо было бы поправить, там очень мутно написано насчёт кастомных контейнеров
Contributions are welcome. У меня уже глаз замылился, так что мнение новичка в доках будет полезно.
источник

ЮБ

Юрий Бадальянц... in Scala User Group
Mikhail
(private val value: Type[A]) extends AnyVal - опсы надо на ньютайп вешать
источник

ЮБ

Юрий Бадальянц... in Scala User Group
Но вообще да, сработало: https://scastie.scala-lang.org/LMnet/GfwOmagjSOe0e7jt4yAHag/4
источник

M

Mikhail in Scala User Group
Опечатка видимо, он там дальше нигде не используется. А вот почему у тебя опсы на Set[A] и без энивала сработали - вот это интересно.
источник

ЮБ

Юрий Бадальянц... in Scala User Group
Mikhail
Опечатка видимо, он там дальше нигде не используется. А вот почему у тебя опсы на Set[A] и без энивала сработали - вот это интересно.
Понятно. Спасибо
источник

M

Mikhail in Scala User Group
Юрий Бадальянц
Понятно. Спасибо
Видимо какая-то очередная косолапая магия в scalac, которая видит опсы на Set[Int] для ньютайпа (причем именно залинкованные через ImplicitScope - если просто опсы отдельно сделать не видит)
источник

СП

Саша Павлычев... in Scala User Group
источник
2020 November 04

VS

Vladimir Sam in Scala User Group
Важный вопрос, почему Map[A, +B], почему A не контравариантный?
источник

VS

Vladimir Sam in Scala User Group
сижу как болван переписываю статические мапы на функции с паттернматчингом
источник

N

Nikolay in Scala User Group
Болван — устаревшее название идола.  Так, для справки .
источник

IA

Ivan Aristov in Scala User Group
Vladimir Sam
Важный вопрос, почему Map[A, +B], почему A не контравариантный?
Потому что там тупклассы не используются, а встроенная машинерия, которая может из-за контр. отвалиться?
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Vladimir Sam
Важный вопрос, почему Map[A, +B], почему A не контравариантный?
потому что extends Iterable[(A, B)]
источник

Oℕ

Oleg ℕizhnik in Scala User Group
мне кажется, минимальный контравариантный надтип Map[A, B] - это PartialFunction[A, B]
источник

VS

Vladimir Sam in Scala User Group
Oleg ℕizhnik
потому что extends Iterable[(A, B)]
кажется я мог бы без этого жить, спасибо
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Vladimir Sam
кажется я мог бы без этого жить, спасибо
нет
источник

Oℕ

Oleg ℕizhnik in Scala User Group
не мог бы
источник

VS

Vladimir Sam in Scala User Group
можно сделать Iterable[A].zip[Iterable[B]]
источник