Size: a a a

Scala User Group

2020 August 02

SA

Sergey Alaev in Scala User Group
Oleg ℕizhnik
Не между какими, я защищаю только константы, остальные куски той статьи, что я видел на скриншотах - бред
Я легко напишу такой функтор на котовых тайпклассах. Так может тогда теоркат - бред, если он не подходит под практические задачи?
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Apache DOG™
Но почему он 42 тогда?
А почему нет
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Apache DOG™
Но почему он 42 тогда?
Всегда так обозначаются константные функторы
источник

AD

Apache DOG™ in Scala User Group
Ну ок
источник

KC

Kain Crow in Scala User Group
Oleg ℕizhnik
object Const42{
   type F42[+A] = Const42.type
   implicit object monad extends StackSafeMonad[F42]{
      def pure[A](a: A) = Const42
      def flatMap[A, B](fa: F42[A],
         f: A => F42[B]) = fa
  }
источник

KC

Kain Crow in Scala User Group
Извините, не компилится
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Sergey Alaev
Я легко напишу такой функтор на котовых тайпклассах. Так может тогда теоркат - бред, если он не подходит под практические задачи?
он не будет функтором
источник

SA

Sergey Alaev in Scala User Group
Oleg ℕizhnik
он не будет функтором
По какому определению функтора - из теорката или "тип высшего порядка с операцией map и законами" ?
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Kain Crow
Извините, не компилится
Ничего, однажды ты выучишь базовую скалу

https://scastie.scala-lang.org/BGZfpFFfRUGMT3iady1dyg
источник

KC

Kain Crow in Scala User Group
Oleg ℕizhnik
Ничего, однажды ты выучишь базовую скалу

https://scastie.scala-lang.org/BGZfpFFfRUGMT3iady1dyg
Я просто с телефона скопипастил код, увидел ошибку и принес сюда факт... при чем тут я
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Sergey Alaev
По какому определению функтора - из теорката или "тип высшего порядка с операцией map и законами" ?
По определению "тип высшего порядка с операциями и законами", который является частным случаем определения из теорката
источник

SA

Sergey Alaev in Scala User Group
Oleg ℕizhnik
По определению "тип высшего порядка с операциями и законами", который является частным случаем определения из теорката
Обоснуй?
источник

KC

Kain Crow in Scala User Group
Бтв, апи котов - не "базовая" скала, если уж на то пошло.
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Sergey Alaev
Обоснуй?
Что?
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Kain Crow
Бтв, апи котов - не "базовая" скала, если уж на то пошло.
Согласен. Но чтение ошибок компиляции - базовая
источник

SA

Sergey Alaev in Scala User Group
Что именно нарушает такой функтор. Я думаю, ты ошибаешься.
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Sergey Alaev
Что именно нарушает такой функтор. Я думаю, ты ошибаешься.
ну смотри, у функтора всего два закона, тебе нужно их доказать.
Докажешь - будет функтором
источник

KC

Kain Crow in Scala User Group
Oleg ℕizhnik
Согласен. Но чтение ошибок компиляции - базовая
Не в силах выдержать духоты чата закатил я очи 🙄
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Sergey Alaev
Что именно нарушает такой функтор. Я думаю, ты ошибаешься.
Я не знаю, какой закон нарушает код, который ты не показал.
Напиши инстанс функтора и попробуем разобраться
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Sergey Alaev
Я легко напишу такой функтор на котовых тайпклассах. Так может тогда теоркат - бред, если он не подходит под практические задачи?
Я думаю, можно построить функторы -  генераторы случайных числе и т.п. между категориями, описывающими вероятностные пространства или случайные процессы.
В принципе, можно сказать любое слово и можно придумать функтор, который подходит. Такая уж обобщённая конструкция

Но функторы в ФП это понять не поможет
источник