Skip to content
0:00 / 0:00

#scala#compilerdesign#typesafety

Pacific Northwest Scala 2013 We're Doing It All Wrong by Paul Phillips

Confreaks

42K subscribers • 73 videos on Hallway • Conference channel

YouTube
  • Recommended by 6 people: 2 on Hacker News, 1 on Lobsters, 2 in engineering communities and 1 curated list.
  • Presented by Paul Phillips, former Scala core contributor
  • An opinion. It argues one side of a question engineers disagree on.

Intermediate. Assumes working knowledge.

64K views13 years ago6 recommendations

Programming languagesSoftware designLanguage design and type systemsFunctional programmingCompilers and interpreters

Paul Phillips critiques Scala and modern programming language design, arguing that many common practices compromise type safety and performance.

My conclusion after moving a million lines of code is that everything we do (plus or minus) is wrong. Henry Ford said "If I had asked people what they wanted, they would have said faster horses." Our horses are now a billion times faster: our horses may well be the fastest in the galaxy. Are we too comfortable on our horses? Would we recognize better mounts if they came along, but didn't look like horses? Is the state of our profession one which warrants pride, shame, or despair? I will explore these questions with unwarranted optimism. Help us caption & translate this video! amara.org/v/FG7Z/

Why it's here

6 people recommend this, 4 dispute it

What people say. Engineers frequently reference this talk as a deep, critical look at the design flaws and complexities of Scala.

Moments people linked to

u/_Sharp_in r/scala • Recommends

Pacific Northwest Scala 2013 We're Doing It All Wrong by Paul Phillips
31View on Reddit

awesome-talkscurated list on GitHubRecommends

Under “Software Development”

We're Doing It All Wrong by **Paul Phillips** (Pacific Northwest Scala 2013) 50:42

pushcxon Lobsters • Recommends

We're Doing It All Wrong (2013) First 38 minutes is about problems in implementing Scala; after that it's a general "What I'm after" in programming that's much more interesting to non-Scala devs.

mietekon Hacker News • Recommends

On “What every computer science major should know (2011)”

5 years ago, Paul Phillips was still a core contributor to Scala. Anyone seriously considering Scala should listen to his talk, titled “We’re doing it all wrong”, and take a look at Policy, his fork of the Scala compiler. link to this video link Previous discussion: link

arkadiyton Hacker News • Recommends

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 to this video link

u/JamieLyin r/scala • Recommends

Pacific Northwest Scala 2013 We're Doing It All Wrong by Paul Phillips

coolsunglasseson Hacker News • Disputes

On “Why Scala is the best language available today”

Right, and how well do subtyping and implicits get along? This is the problem, everything and the kitchen sink is tossed into Scala without any consideration for how well things work together because they've let it be a PLT grad students playground. link link to this video The Scala community didn't lose one its best core developers for nothing. I mention Clojure and Haskell in the same breath because FP and immutability are what I care about and Scala fails to be a nice functional language.

platzon Hacker News • Disputes

On “Scala turns 10”

My sample size is small, but the sentiment mainly comes from this: "Pacific Northwest Scala 2013 We're Doing It All Wrong by Paul Phillips - YouTube" 1 1 link to this video

fiatmoneyon Hacker News • Disputes

On “Why we love Scala at Coursera”

This is a thing about Scala which gives me pause: it looks like gazing into the guts of the compiler puts one on a course towards a nervous breakdown. link to this video

joehillenon Hacker News • Disputes

On “Consider the Nimrod Programming Language”

What is Scala doing in the same list with Rust, Julia, Nimrod, and C++? You do realize there is a JVM preventing it from being a systems level language, right? Also, you should need no more reason to avoid Scala than this: link to this video If you're interested in Scala, learn Haskell. It's faster, its design is re-enforced with proven mathematical concepts, and it doesn't have the worst syntax ever.

u/ksrynin r/ProgrammingLanguages • Mentions

Paul Phillips: "We're Doing It All Wrong" "We're Doing It All Wrong" is the title of the keynote address Paul Phillips\* gave at the 2013 Pacific Northwest Scala Conference. * The talk is **not** Scala-specific although he does criticize Scala heavily for certain design choices (for "compatibility" or "performance" reasons) which result in the loss of type safety or prevent certain kinds of optimizations. * Do not sacrifice correctness for performance. "Those who would give up correctness for a little temporary performance deserve neither correctness nor performance." * One point he makes is that "there is no such thing as **general purpose**." You cannot have a programming language tha…

jackfoxyon Hacker News • Mentions

On “How Kentucky Built the Country's Best Obamacare Website”

Correctness is the dog. Everything else is tail. Don't know who said that first, might have been this guy link to this video

asdasfon Hacker News • Mentions

On “In Defense of Scala. Response to “I Don’t Like Scala””

>Edward Kmett is a Haskell evangelist Really? Could you point me to some of his evangelizing? Or did you mean "he uses haskell and is quite happy with it"? Because that isn't the same thing. >inconsistencies that the average programmer will never even realize exist. Do you honestly believe that? link to this video >Scala that only when you leave it's confines do you realize, shit, I miss But the very point Edward makes is that you don't give up those things when you leave scala. You only give up those things if you leave scala for something worse. You could leave for something better, keep all those things, and get tons of important things that you also won't realize you are missing until you get used…

babs474on Hacker News • Mentions

On “Gradle 2.0”

Very True. I'm pretty sure that quote wasn't meant to be a critique of the Groovy language, just an expression of interest in Scala. Yet its brought out every time somebody wants to dismiss Groovy. Compare that quote to this1 presentation where Paul Phillips lays in to scala for 50 minutes. Even when somebody does criticize their own creation I doubt they mean "Hey everybody, that thing I spent a bunch of time on? Throw it all in the garbage, its pointless". 1 link to this video

juliangambleon Hacker News • Mentions

On “Scala: Next Steps”

Some context - the lead developer on the Scala Compiler, Paul Phillips, went slightly AWOL last year, and presented the talk "We're doing it all wrong" link to this video link He still seems slightly burnt by the whole thing: link Other critiques of Scala collections have been made with the Typelevel library link which aims to fix these issues. This post, 'Next Steps', seems to have come out of Martin Odersky's response to the situation. I commend him for taking practical and thought out action.

jongraehlon Hacker News • Mentions

On “Policy – A fork of the Scala compiler”

Paul, why do you say it's wrong that Float(Long.max - Int.max) is equal to Float(Long.max)? Float has less than 32 significant binary digits, and Long.max - Int.max has the same MSBs as Long.max. You would need to use Double to see the difference. I'm not sure what implicit conversions/promotions have to do with that - you want a warning or error when going from Long to Float? That would be reasonable. You can even lose significant digits between Int->Float and Long->Double even though they have the same total number of bits, so you could require those to be explicit. (from a slide in link to this video )