Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Sep 05 2019 14:43
    @typelevel-bot banned @jdegoes
  • Jan 31 2019 21:17
    codecov-io commented #484
  • Jan 31 2019 21:08
    scala-steward opened #484
  • Jan 31 2019 18:19
    andywhite37 commented #189
  • Jan 31 2019 02:41
    kamilongus starred typelevel/cats-effect
  • Jan 30 2019 00:01
    codecov-io commented #483
  • Jan 29 2019 23:51
    deniszjukow opened #483
  • Jan 29 2019 23:37
  • Jan 29 2019 23:22
  • Jan 29 2019 20:26
    Rui-L starred typelevel/cats-effect
  • Jan 29 2019 18:01
    jdegoes commented #480
  • Jan 29 2019 17:04
    thomaav starred typelevel/cats-effect
  • Jan 28 2019 17:43
    asachdeva starred typelevel/cats-effect
  • Jan 28 2019 07:12
    alexandru commented #480
  • Jan 28 2019 05:45
    codecov-io commented #482
  • Jan 28 2019 05:35
    daron666 opened #482
  • Jan 27 2019 13:56
    codecov-io commented #481
  • Jan 27 2019 13:46
    lrodero opened #481
  • Jan 27 2019 05:47
    codecov-io commented #460
  • Jan 27 2019 05:37
    codecov-io commented #460
Daniel Spiewak
@djspiewak
yeah lol :-)
Fabio Labella
@SystemFw
oh, by heavy weight I just mean that it can do a lot of things
Daniel Spiewak
@djspiewak
completely, I just wanted to clarify for those who might not realize
Ashkan Kh. Nazary
@ashkann
@SystemFw I saw all of your videos, some of time twice ... still don't get quite some part of this whole functional effects. I wonder is it just me or things got suddenly more complicated, like 5 folds. It was supposed to be simpler than imperative, no :D ?
Fabio Labella
@SystemFw
once you get familiar with it, it's actually got a relatively tiny sets of primitives, and low footprint for effectful code
Daniel Spiewak
@djspiewak
the fact that IO fits an entire green thread runtime in a few dozen bytes of object header and a few more bytes of heap is actually silliness
Fabio Labella
@SystemFw

I wonder is it just me or things got suddenly more complicated, like 5 folds. It was supposed to be simpler than imperative, no :D ?

I think people don't realise that it's not the same power

it's not like "it's more complex for the same capabilities"
do async imperatively, and it's way more complex than IO
do interruption... oh yeah actually you cannot do that at all
Daniel Spiewak
@djspiewak
so there's a bit of a systematic perception problem here stemming from the fact that imperative doesn't seem complicated when youw rite it
Ashkan Kh. Nazary
@ashkann
John De Goes seems to be rather against Sync ... you big guys don't always agree you know :D
Daniel Spiewak
@djspiewak
but what you're writing has a ton of holes and limitations
John has his own biases and agendas :-)
like he has a valid and interesting perspective, but it's important to keep it in perspective (our biases too)
Fabio Labella
@SystemFw
John seems to be rather against things that don't favour his work, although some of that work is very high quality
but yeah keep biases in mind both sides
Daniel Spiewak
@djspiewak
John's beef with Sync mostly boils down to disagreeing that there is value in restricting your available capabilities
it's basically the same as arguing that you should just use Double or BigDecimal for your "money" type, rather than defining a real Money type that verifies things and prevents you from doing weird stuff like dividing dollars by euros
Fabio Labella
@SystemFw
the thing is that there is no such thing as "the functional way"
Daniel Spiewak
@djspiewak
yep
Fabio Labella
@SystemFw
because scala is multi paradigm, you assume each paradigm to be homegenous
Daniel Spiewak
@djspiewak
or rather, there is, but it's so incredibly high level that it doesn't help you make decisions on these types of things
yeah
Fabio Labella
@SystemFw
but even in haskell, where all you can do is pure FP, there are still a million alternatives to designing things
and some of them boil down to rather foundational ways of representing things, e.g. do you pass behaviour in (final tagless, dependency injection, go interfaces, rust traits, Reader monad) or do you return descriptions out (Free monad, algebraic effects, etc).
there is no right answer
I do think, however, than within an ecosystem we should try and be the right amount of opinionated
Daniel Spiewak
@djspiewak

do you pass behaviour in [...] or do you return description [...]

god Fabio you're so good at distilling things down…

Fabio Labella
@SystemFw
:)
Daniel Spiewak
@djspiewak
I never thought of it in such a concise fashion
Ashkan Kh. Nazary
@ashkann
I see your point , to the rather limited experience that I have
Fabio Labella
@SystemFw
my stretch goal is to do a big review of programming across paradigms, to show how many ideas actually boil down to relatively few decision points, and a bunch of cosmetic decisions covers the rest
(semi jokingly, maybe I'll do it, although there is little point to it)
Ashkan Kh. Nazary
@ashkann
Would be nice to have a such a view
Daniel Spiewak
@djspiewak
indeed
Fabio Labella
@SystemFw

, however, than within an ecosystem we should try and be the right amount of opinionated

but the thing is, if you look at skunk, and then at http4s, and then at neutron, and then at log4cats, and then at scala steward

there is a "cats-effecty-ness" to them
oh and btw, it will be fantastic in scala 3
Daniel Spiewak
@djspiewak
:-D
yeah scala 3 and cats effect 3 both make "cats effecty ness" much much easier and more convenient and prettier, etc etc
Fabio Labella
@SystemFw
for example, prepare for my hot take that we shouldn't use context bounds there, which is going to do wonders for beginners
Daniel Spiewak
@djspiewak
(not so hot tbh; I pretty much agree even though I'm usually lazy)
Ashkan Kh. Nazary
@ashkann
@djspiewak Not sure this is the right place, but I always wanted to express my appreciation for the work you have done. I still remember the "high wizardry in the land of Scala" ... that magical moment I realized the hole in my head that is hurting my brain is called "kind" ...
Daniel Spiewak
@djspiewak
:-)
thank you!
Fabio Labella
@SystemFw
I still remember the very first video I saw of Daniel
where he was arguing for the Cake pattern :joy: :trollface:
Daniel Spiewak
@djspiewak
lmao
look we all make mistakes in our youth, okay?