home.social

#catseffect — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #catseffect, aggregated by home.social.

fetched live
  1. Моки без боли

    Моки — достаточно крутой инструмент, если использовать его правильно. И все-таки лично для меня писать и поддерживать тесты на моках всегда было отдельным видом боли. Думаю, все знакомы с ситуацией: добавил в метод новый аргумент — и пошёл в 30 тест-кейсов проставлять заглушки. И это только от одного нового аргумента. И я не буду здесь спорить о терминологии — в этой статье я буду называть все тестовые дублёры «моками». Примеры будут на Scala, но моки в других языках работают похожим образом, так что боль универсальная. Как и решение — об этом в статье.

    habr.com/ru/articles/1030834/

    #scala #scalamock #zio #catseffect #тестирование #моки #стабы #моктестирование #юниттестирование

  2. Моки без боли

    Моки — достаточно крутой инструмент, если использовать его правильно. И все-таки лично для меня писать и поддерживать тесты на моках всегда было отдельным видом боли. Думаю, все знакомы с ситуацией: добавил в метод новый аргумент — и пошёл в 30 тест-кейсов проставлять заглушки. И это только от одного нового аргумента. И я не буду здесь спорить о терминологии — в этой статье я буду называть все тестовые дублёры «моками». Примеры будут на Scala, но моки в других языках работают похожим образом, так что боль универсальная. Как и решение — об этом в статье.

    habr.com/ru/articles/1030834/

    #scala #scalamock #zio #catseffect #тестирование #моки #стабы #моктестирование #юниттестирование

  3. Моки без боли

    Моки — достаточно крутой инструмент, если использовать его правильно. И все-таки лично для меня писать и поддерживать тесты на моках всегда было отдельным видом боли. Думаю, все знакомы с ситуацией: добавил в метод новый аргумент — и пошёл в 30 тест-кейсов проставлять заглушки. И это только от одного нового аргумента. И я не буду здесь спорить о терминологии — в этой статье я буду называть все тестовые дублёры «моками». Примеры будут на Scala, но моки в других языках работают похожим образом, так что боль универсальная. Как и решение — об этом в статье.

    habr.com/ru/articles/1030834/

    #scala #scalamock #zio #catseffect #тестирование #моки #стабы #моктестирование #юниттестирование

  4. Cats-Effect 3.6.0 is a very exciting release due to the work on its internal work scheduler, many congrats to its contributors! ❤️

    github.com/typelevel/cats-effe

    #Scala #CatsEffect #FP

  5. Cats-Effect 3.6.0 is a very exciting release due to the work on its internal work scheduler, many congrats to its contributors! ❤️

    github.com/typelevel/cats-effe

    #Scala #CatsEffect #FP

  6. Cats-Effect 3.6.0 is a very exciting release due to the work on its internal work scheduler, many congrats to its contributors! ❤️

    github.com/typelevel/cats-effe

    #Scala #CatsEffect #FP

  7. Cats-Effect 3.6.0 is a very exciting release due to the work on its internal work scheduler, many congrats to its contributors! ❤️

    github.com/typelevel/cats-effe

    #Scala #CatsEffect #FP

  8. @alexelcu

    #Scala #CatsEffect #FP yep! And thanks @djspiewak for the release notes, they are always very well written

  9. @alexelcu

    #Scala #CatsEffect #FP yep! And thanks @djspiewak for the release notes, they are always very well written

  10. @alexelcu

    #Scala #CatsEffect #FP yep! And thanks @djspiewak for the release notes, they are always very well written

  11. @alexelcu

    #Scala #CatsEffect #FP yep! And thanks @djspiewak for the release notes, they are always very well written

  12. @alexelcu

    #Scala #CatsEffect #FP yep! And thanks @djspiewak for the release notes, they are always very well written

  13. Cats-Effect 3.6.0-RC1 comes with some very exciting changes ❤️ Congrats to the team, they keep delivering 😍

    #Scala #CatsEffect #FP

    github.com/typelevel/cats-effe

  14. Cats-Effect 3.6.0-RC1 comes with some very exciting changes ❤️ Congrats to the team, they keep delivering 😍

    #Scala #CatsEffect #FP

    github.com/typelevel/cats-effe

  15. Cats-Effect 3.6.0-RC1 comes with some very exciting changes ❤️ Congrats to the team, they keep delivering 😍

    #Scala #CatsEffect #FP

    github.com/typelevel/cats-effe

  16. Cats-Effect 3.6.0-RC1 comes with some very exciting changes ❤️ Congrats to the team, they keep delivering 😍

    #Scala #CatsEffect #FP

    github.com/typelevel/cats-effe

  17. Cats-Effect 3.6.0-RC1 comes with some very exciting changes ❤️ Congrats to the team, they keep delivering 😍

    #Scala #CatsEffect #FP

    github.com/typelevel/cats-effe

  18. @tymwol

    #Scala it's that (and there's a lot of them), and also more. I think scala pushed the state of art regarding effect system, and things like #catseffect (more "Haskell inspired") and #zio (more "a Scala own thing") are quite amazing.
    And #scala3 has really impressive things regarding types (see for ex #iron social.treehouse.systems/@fanf)

  19. @tymwol

    #Scala it's that (and there's a lot of them), and also more. I think scala pushed the state of art regarding effect system, and things like #catseffect (more "Haskell inspired") and #zio (more "a Scala own thing") are quite amazing.
    And #scala3 has really impressive things regarding types (see for ex #iron social.treehouse.systems/@fanf)

  20. @tymwol

    #Scala it's that (and there's a lot of them), and also more. I think scala pushed the state of art regarding effect system, and things like #catseffect (more "Haskell inspired") and #zio (more "a Scala own thing") are quite amazing.
    And #scala3 has really impressive things regarding types (see for ex #iron social.treehouse.systems/@fanf)

  21. @tymwol

    #Scala it's that (and there's a lot of them), and also more. I think scala pushed the state of art regarding effect system, and things like #catseffect (more "Haskell inspired") and #zio (more "a Scala own thing") are quite amazing.
    And #scala3 has really impressive things regarding types (see for ex #iron social.treehouse.systems/@fanf)

  22. @tymwol

    #Scala it's that (and there's a lot of them), and also more. I think scala pushed the state of art regarding effect system, and things like #catseffect (more "Haskell inspired") and #zio (more "a Scala own thing") are quite amazing.
    And #scala3 has really impressive things regarding types (see for ex #iron social.treehouse.systems/@fanf)

  23. Monadic effect systems (IO) are great, but they'll never be the (de jure) standard, as #Scala has Java's evaluation model and calling conventions.

    The current standard for APIs doing I/O is `Future`. I'd rather have blocking I/O; easier to integrate w/ #CatsEffect, too.

  24. Monadic effect systems (IO) are great, but they'll never be the (de jure) standard, as #Scala has Java's evaluation model and calling conventions.

    The current standard for APIs doing I/O is `Future`. I'd rather have blocking I/O; easier to integrate w/ #CatsEffect, too.

  25. Monadic effect systems (IO) are great, but they'll never be the (de jure) standard, as #Scala has Java's evaluation model and calling conventions.

    The current standard for APIs doing I/O is `Future`. I'd rather have blocking I/O; easier to integrate w/ #CatsEffect, too.

  26. Monadic effect systems (IO) are great, but they'll never be the (de jure) standard, as #Scala has Java's evaluation model and calling conventions.

    The current standard for APIs doing I/O is `Future`. I'd rather have blocking I/O; easier to integrate w/ #CatsEffect, too.

  27. Monadic effect systems (IO) are great, but they'll never be the (de jure) standard, as #Scala has Java's evaluation model and calling conventions.

    The current standard for APIs doing I/O is `Future`. I'd rather have blocking I/O; easier to integrate w/ #CatsEffect, too.

  28. Let’s reveal another surprise talk… Here’s @alexelcu presenting concurrency concepts of the JVM, sprinkled with some Cats-Effect utilities.

    #scalarconf #catseffect

  29. Let’s reveal another surprise talk… Here’s @alexelcu presenting concurrency concepts of the JVM, sprinkled with some Cats-Effect utilities.

    #scalarconf #catseffect

  30. Let’s reveal another surprise talk… Here’s @alexelcu presenting concurrency concepts of the JVM, sprinkled with some Cats-Effect utilities.

    #scalarconf #catseffect

  31. Let’s reveal another surprise talk… Here’s @alexelcu presenting concurrency concepts of the JVM, sprinkled with some Cats-Effect utilities.

    #scalarconf #catseffect

  32. Let’s reveal another surprise talk… Here’s @alexelcu presenting concurrency concepts of the JVM, sprinkled with some Cats-Effect utilities.

    #scalarconf #catseffect

  33. On #Scala's #CatsEffect library — one common myth is that it's a library built for “tagless final” (TF).

    While it's true that it gives you unparalleled ability to use TF and monad transformer stacks, it's perfectly usable without. Most libraries from #Typelevel are.

  34. On #Scala's #CatsEffect library — one common myth is that it's a library built for “tagless final” (TF).

    While it's true that it gives you unparalleled ability to use TF and monad transformer stacks, it's perfectly usable without. Most libraries from #Typelevel are.

  35. On #Scala's #CatsEffect library — one common myth is that it's a library built for “tagless final” (TF).

    While it's true that it gives you unparalleled ability to use TF and monad transformer stacks, it's perfectly usable without. Most libraries from #Typelevel are.

  36. On #Scala's #CatsEffect library — one common myth is that it's a library built for “tagless final” (TF).

    While it's true that it gives you unparalleled ability to use TF and monad transformer stacks, it's perfectly usable without. Most libraries from #Typelevel are.

  37. I created a #chatgpt #Scala Cats Effect Tutor for fun take a look all:

    https://chat.openai.com/g/g-anUfWL8Ty-scala-cats-effect-tutor

    Feedback to make it better appreciated. I will be iterating on it, this is just an initial attempt.

    Have fun all!

    #Typelevel #catseffect

    cc @typelevel

  38. I created a #chatgpt #Scala Cats Effect Tutor for fun take a look all:

    https://chat.openai.com/g/g-anUfWL8Ty-scala-cats-effect-tutor

    Feedback to make it better appreciated. I will be iterating on it, this is just an initial attempt.

    Have fun all!

    #Typelevel #catseffect

    cc @typelevel

  39. I created a #chatgpt #Scala Cats Effect Tutor for fun take a look all:

    https://chat.openai.com/g/g-anUfWL8Ty-scala-cats-effect-tutor

    Feedback to make it better appreciated. I will be iterating on it, this is just an initial attempt.

    Have fun all!

    #Typelevel #catseffect

    cc @typelevel

  40. I created a #chatgpt #Scala Cats Effect Tutor for fun take a look all:

    https://chat.openai.com/g/g-anUfWL8Ty-scala-cats-effect-tutor

    Feedback to make it better appreciated. I will be iterating on it, this is just an initial attempt.

    Have fun all!

    #Typelevel #catseffect

    cc @typelevel

  41. #CatsEffect or #ZIO - is there a library that beats another in this duel? Learn the differences, similarities, philosophy behind them both, and core features of those #Scala libraries and choose your favourite tool: softwaremill.com/cats-effect-v

  42. #CatsEffect or #ZIO - is there a library that beats another in this duel? Learn the differences, similarities, philosophy behind them both, and core features of those #Scala libraries and choose your favourite tool: softwaremill.com/cats-effect-v

  43. #CatsEffect or #ZIO - is there a library that beats another in this duel? Learn the differences, similarities, philosophy behind them both, and core features of those #Scala libraries and choose your favourite tool: softwaremill.com/cats-effect-v

  44. #CatsEffect or #ZIO - is there a library that beats another in this duel? Learn the differences, similarities, philosophy behind them both, and core features of those #Scala libraries and choose your favourite tool: softwaremill.com/cats-effect-v

  45. #CatsEffect or #ZIO - is there a library that beats another in this duel? Learn the differences, similarities, philosophy behind them both, and core features of those #Scala libraries and choose your favourite tool: softwaremill.com/cats-effect-v

  46. Note these are just minor pet peeves, it's just that FP folks often get too hung up on correctness.

    OTOH #Typelevel #CatsEffect is a wonderful project, being #Scala's secret weapon.

  47. Note these are just minor pet peeves, it's just that FP folks often get too hung up on correctness.

    OTOH #Typelevel #CatsEffect is a wonderful project, being #Scala's secret weapon.

  48. Note these are just minor pet peeves, it's just that FP folks often get too hung up on correctness.

    OTOH #Typelevel #CatsEffect is a wonderful project, being #Scala's secret weapon.

  49. Note these are just minor pet peeves, it's just that FP folks often get too hung up on correctness.

    OTOH #Typelevel #CatsEffect is a wonderful project, being #Scala's secret weapon.

  50. Note these are just minor pet peeves, it's just that FP folks often get too hung up on correctness.

    OTOH #Typelevel #CatsEffect is a wonderful project, being #Scala's secret weapon.

  51. Currently, I am using a Cofree like DirTree data structure in #Akka to keep track of the actors responsible for a given resource so that we can send HTTP messages directly to them.
    ```scala
    case class DirTree[R](
    ref: R,
    kids: HashMap[String, DirTree[R, A]] = HashMap()
    ):
    ```
    github.com/co-operating-system

    I am synchronizing that with a #Java AtomicReference currently. I wonder if @alexelcu setup would make it easier to use a #CatsEffect Ref. One thing I had been thinking of is of wrapping the children in a `Ref` so that one would need to update only parts of the subtree if needed.

    ```scala
    case class DirTree[R](
    data: R,
    kids: Ref[HashMap[String, DirTree[R]]]
    ):
    ```
    pluralsight.com/tech-blog/scal

    By the way it should be quite easy to see why DirTree is just the Cofree Commonad with
    ```scala
    type DirTree[A] = Cofree[Map[String,?],A]
    ```
    But I can't quite see the advantages of using the Cofree right now.
    typelevel.org/cats/api/cats/fr

  52. Currently, I am using a Cofree like DirTree data structure in #Akka to keep track of the actors responsible for a given resource so that we can send HTTP messages directly to them.
    ```scala
    case class DirTree[R](
    ref: R,
    kids: HashMap[String, DirTree[R, A]] = HashMap()
    ):
    ```
    github.com/co-operating-system

    I am synchronizing that with a #Java AtomicReference currently. I wonder if @alexelcu setup would make it easier to use a #CatsEffect Ref. One thing I had been thinking of is of wrapping the children in a `Ref` so that one would need to update only parts of the subtree if needed.

    ```scala
    case class DirTree[R](
    data: R,
    kids: Ref[HashMap[String, DirTree[R]]]
    ):
    ```
    pluralsight.com/tech-blog/scal

    By the way it should be quite easy to see why DirTree is just the Cofree Commonad with
    ```scala
    type DirTree[A] = Cofree[Map[String,?],A]
    ```
    But I can't quite see the advantages of using the Cofree right now.
    typelevel.org/cats/api/cats/fr