News for hackers. Stuff that matters.
Re:Typelevel Scala by saosebastiao on Friday August 26, 2016 @06:23PM (#12369717)
This isn't as bad as it looks. Think of it like an additional experimental scalac that is more ready to integrate into mainline scala than Dotty is.

I'm fully on board with you...I think Scalaz as a library is a virus, and it's community is toxic, and it's desperate desire to turn Scala into Haskell ends up turning an awesome ML-inspired language into a vastly inferior religious (...ahem, pure) language.

But Cats and Shapeless aren't Scalaz. They have concepts that happen to exist in Haskell, but they aren't Haskell's concepts to own any more than C owns imperative programming. If anything, Mathematics owns the concepts and Haskell happened to borrow them to make a terrible purist concept slightly more practical. It turns out that when you need the concepts (and I have, on a couple of occasions), it makes Scala slightly more practical as well.

Re:Typelevel Scala by runT1ME on Friday August 26, 2016 @06:36PM (#12369787)
You happen to think the most popular scala library is a virus?

We use it extensively at Verizon, and it exists just fine with 'impure' code, Akka code, or whatever else various teams decide to also pull in. Codebases that don't use Scalaz end up re-inventing it, usually in a more buggy way and at a waste of developer effort.

Reinventing is fine on your own for a learning exercise and I certainly did it a few times, but in production code, just use Scalaz. Or sure, I suppose if you want to use a copy and pasted into a new repo version of Scalaz, go for Cats. I don't even know why Shapeless is brought into the conversation, it has a much more narrow use case and I almost never reach for it.

I've also found the Scalaz community and chat room on IRC quite helpful, whereas I've had some really unpleasant interactions with Cats committers. To go around spreading FUD and promoting an alpha level library that's less than half as popular as Scalaz (according to Github stars) is just irresponsible.

Re:Typelevel Scala by premium-concern on Friday August 26, 2016 @11:46PM (#12370861)
I'll be so happy when scalaz has finally gone the way of Lift.
Re:Typelevel Scala by AzzieElbab on Friday August 26, 2016 @07:14PM (#12369977)
Exactly. Practically every interesting scala lib (from scalatest to play to sbt) has internal implementation of functional patterns.
Re:Typelevel Scala by kod on Friday August 26, 2016 @09:48PM (#12370492)
Sorry, but there's no way scalaz is a more popular library than Spark.
Re:Typelevel Scala by whateveracct on Friday August 26, 2016 @06:39PM (#12369798)
The overlap between cats and scalaz is gigantic idk why you seem to think they are distinct? I'd bet that the overlap between the most commonly used parts of cats and scalaz is even larger.

The main thing scalaz has that cats doesn't is scalaz.concurrent.Task, and there are multiple typelevel-endorsed alternatives to it being worked on as well (in monix and fs2). Task is wonderful btw.

fwiw we use scalaz at work and haven't upgraded to cats because it isn't ready. cats just fixed a performance bug that would have destroyed us (Map union mappend was ridiculously unoptimized compared to scalaz's). We .foldMap(/* make a small Map*/) all the time and it's one of our favorite parts of scalaz. see https://github.com/typelevel/cats/issues/1290 for the bug.

Re:Typelevel Scala by GFK_of_xmaspast on Saturday August 27, 2016 @12:48PM (#12373110)
The main thing that scalaz has that cats doesn't is Tony Morris.
Re:Typelevel Scala by yummyfajitas on Friday August 26, 2016 @11:48PM (#12370870)
How are Cats and Scalaz different? I haven't played with Cats lately, but last I looked it was just a reimplementation of Scalaz.

Typelevel didn't even want to fork Scalaz to begin with. That was only their plan B, plan A was to take over the community with code of conduct/social justice shenanigans, and then expel people they didn't like. The fork is just what they came up with after dibblegate failed.

Re:Typelevel Scala by premium-concern on Saturday August 27, 2016 @01:41AM (#12371181)
This desperate rewriting of history is one if the reasons why large parts of the Scala community are happy to get rid of these nutjobs.

They need to move their lazy asses to Haskell and start fixing and implementing the tooling there instead of enjoying their free ride in Scala while constantly shitting on the language and its community.

Re:Typelevel Scala by yummyfajitas on Saturday August 27, 2016 @09:06AM (#12372187)
It's not a rewriting of history. The dibblegate conflict occurred at the end of 2014.

https://groups.google.com/forum/#!topic/scalaz/9X_putSGoCY

https://groups.google.com/forum/#!searchin/scalaz/code$20of$...

Calling Tony Morris a rapist was probably the highlight of the affair: https://twitter.com/shajra/status/544712807220908032

Up until they realized they couldn't take over the community, Lars Hupel and Miles Sabin had no publicly stated plans to leave Scalaz.

Cats initial commit is early 2015.

https://github.com/typelevel/cats/commits/master?page=74

I have no idea why everyone dislikes them so much. I use Scalaz, and it's pretty great. From what I've seen Cats is nearly the same thing, I just saw no reason to switch. In what way do you believe Cats is significantly different from Scalaz, beyond the fact that you apparently dislike the people involved?

Incidentally, scalaz-streaming was also pretty nice - mathematically I liked it but it was simply not as performant as Akka streaming. I'd love to use it if it becomes fast.

Re:Typelevel Scala by premium-concern on Saturday August 27, 2016 @10:34AM (#12372500)
I have no idea what you are even trying to argue.

Why would they create cats while they still had hope to save scalaz from its community? No need to spin some crazy conspiracy.

> you apparently dislike the people involved

LOL WTF? That guy has single-handedly destroyed more than one community already. It's not like it's some unfortunate thing that accidentally happens. It has happened before, and will keep happening until he is shown the door for good.

The rest of the scalaz community are enabling him to keep doing his toxic shit. The faster scalaz goes the way of Lift, the better.

I judge people for using scalaz. If you think it is acceptable to keep enabling him, you are a bad human being.

Re:Typelevel Scala by runT1ME on Saturday August 27, 2016 @04:32PM (#12374038)
Can you let me which open source community you prefer? Clearly It's the more welcoming one.
Re:Typelevel Scala by yummyfajitas on Saturday August 27, 2016 @11:07AM (#12372645)
If you scroll up, you'll see I was replying to this:

it's desperate desire to turn Scala into Haskell ends up turning an awesome ML-inspired language into a vastly inferior religious (...ahem, pure) language. But Cats and Shapeless aren't Scalaz.

I claim that from a technical perspective they are more or less equivalent and they only forked due to a feud. So if you want to avoid Haskell-inspired constructs in Scalaz, Cats won't be much to your liking either.

Glad we are on the same page!

Re:Typelevel Scala by premium-concern on Saturday August 27, 2016 @11:19AM (#12372702)
And if you scroll up, you'll see that this wasn't me.

I don't have issues with Haskell-inspired constructs, I have issues with Haskell-inspired behavior.