Scala Collections: Why Not?

InfoQ · 43K views · 2014 · 45:42

Open on YouTube

Functional programmingSoftware architecture & designProgramming language designtalkdated

Why Hacker News recommends it

Cited in Scala-skeptic arguments as an insider's critique, and for his alternative collections API design.

What it is

Paul Phillips, a Typesafe co-founder and prolific Scala committer, explains why he walked away from Scala. He critiques the Scala collections library and presents his own design focused on immutability, performance and correctness.

Recommended by 0 HN commenters across 0 different months, 2015 to 2020.

What Hacker News said

Cites harveywi · 2016-08 · on “Higher-kinded types: the difference between giving up and moving forward”

> I don't want .Where() called on an array to return another array. I want a lazy IEnumerable<T> almost every time. Yes, good point. There is a lot of space to explore in collections API designs, and the LINQ design is just one of them that makes its own tradeoffs (e.g., only have to implement "GetEnumerator()" to get a watered-down monadic experience). Contrast that with the well-meaning but convoluted and buggy Scala collections API (very difficult for novices to create a custom collection due to CanBuildFrom and other tricky stuff). Paul Phillips came up with a pretty neat collections API [1, 2] that provides a nice feature set, including high-performance and typesafe views when you don't

Critical throwawuy222 · 2015-04 · on “Ask HN: Should I learn Scala or Go?”

(throwaaway here) Before you waste the next few months of your life learning a corrupt programming language: - Typesafe co-founder quits: [this video] - [LINK] : Paul Dix - Why Node and Scala will dry up: Go will drink their milkshake - I can personally tell you, scala is awful at handling large codebases and is so filled with idioms, you have a difficult time reading it. I remember opening scala code, seeing english, but it felt impossible to decipher. - You feel clever when you write it. No doubt about that. Other programmers and your customers don't care. - Compilation time: It's atrocious, we're talking 1 to 10 minutes to compile web apps. - Package dependencies: You end up incorporating java

Critical jermo · 2015-04 · on “Ask HN: Why do people have a hatred for Scala?”

Here's one: [LINK] Apart from occasional issues in the community Scala is criticised for being too complex: [this video]

Critical arkadiyt · 2015-05 · on “JetBrains' MPS Projectional Editor [video]”

If you enjoy these types of compiler videos then I would highly recommend the following rants against Scala by Paul Phillips (from TypeSafe and one of the core language contributors). He also talks about wanting to edit abstract syntax trees directly: [LINK] [this video]

Critical partycoder · 2017-04 · on “Learn ES6 and ES7 in 7 Days”

I think all technologies have sharp edges somewhere, and the way to stay afloat in this business is staying alert. Testing assumptions help, be it through quick REPL experimentation or a unit test. JavaScript has some bad fame around unintuitive behavior but you can find these styles of issues in most languages. A random example: Scala. [this video]

Critical siwatanejo · 2020-11 · on “Dark’s new backend will be in F#”

Before choosing Scala I think you should watch this talk: [this video] (note: he's not a troll, he worked 5 years with Scala)