News for hackers. Stuff that matters.
Re:Haskell: The Bad Parts, part 2 (2020) by agentultra on Tuesday February 09, 2021 @10:51AM (#26078875)
GHC is a production-ready compiler (for Haskell) suited for industry use. I work on a growing, healthy team and we ship an application written in Haskell several times a day. It has decent tooling, which is improving, and the language itself is what makes it possible to tolerate the pace of those developments.

Haskell isn't a pure "research-only" language. I realize people like to point out that it's original goal was research... however the nature of that research has changed over time. Take Galois' Crucible project where they used advanced dependent-types in order to write their security analysis tool [0]. They could have used research-grade dependently-typed languages that are much more expressive and easier to use... but they chose Haskell because they needed an industrial-grade compiler capable of producing fast code to run in a production setting. The kind of research being done in GHC and Haskell these days is bringing innovation and advancement in functional programming into industrial applications.

Every compiler is going to have warts. Especially with people using it and depending on it for industrial use. That's a good thing. You could be like Lean 4 which will make no promises of backwards compatibility or consideration for industrial users in the name of staying purely for research.

Although I agree that Haskell is impressive in its ability to evolve and grow! Linear types just landed in GHC 9.0.1 and many fine folks are improving the compiler to make way for dependent types. It's good stuff!

And to see languages like Java, C#, C++, and others pick up on the low-hanging fruit of FP languages is a sign that the paradigm is gaining popularity and adoption: ADTs, lamdbas, type inference, pattern matching... Maybe in 20-30 years will see these languages adopting higher-kinded types, rank-n types, GADTs, and more?

[0] https://www.researchgate.net/publication/334751646_Dependent...

Re:Haskell: The Bad Parts, part 2 (2020) by haskellandchill on Tuesday February 09, 2021 @11:00AM (#26079010)
Growing healthy Haskell team? Checks notes oh I already applied :)
Re:Haskell: The Bad Parts, part 2 (2020) by roflc0ptic on Tuesday February 09, 2021 @01:54PM (#26081192)
Have you tried Digital Asset?
Re:Haskell: The Bad Parts, part 2 (2020) by haskellandchill on Tuesday February 09, 2021 @02:10PM (#26081348)
Yes, general rule is if there’s a Haskell job I’ve at some point applied for it.
Re:Haskell: The Bad Parts, part 2 (2020) by lambda_obrien on Tuesday February 09, 2021 @03:12PM (#26081907)
I want to work in Haskell, do you have any other suggestions for companies?
Re:Haskell: The Bad Parts, part 2 (2020) by haskellandchill on Tuesday February 09, 2021 @03:56PM (#26082291)
Bitnomial, College Vine, Sentenai, Mercury, and Co-star are Haskell companies I've applied to recently. There's a different set if UK or EU is an option.
Re:Haskell: The Bad Parts, part 2 (2020) by giovannibonetti on Wednesday February 10, 2021 @06:30PM (#26096284)
What options do you know about in the EU and UK?
Re:Haskell: The Bad Parts, part 2 (2020) by roflc0ptic on Tuesday February 09, 2021 @04:14PM (#26082456)
IOHK, Lumi are two others
Re:Haskell: The Bad Parts, part 2 (2020) by lambda_obrien on Wednesday February 10, 2021 @02:59PM (#26093896)
Thanks!
Re:Haskell: The Bad Parts, part 2 (2020) by lambda_obrien on Wednesday February 10, 2021 @02:59PM (#26093894)
Thanks!
Re:Haskell: The Bad Parts, part 2 (2020) by lambda_obrien on Tuesday February 09, 2021 @03:11PM (#26081889)
Has anyone that you know of started using linear types for anything interesting yet?
Re:Haskell: The Bad Parts, part 2 (2020) by why_Mr_Anderson on Tuesday February 09, 2021 @02:51PM (#26081723)
Is there anything of any significance written in Haskell outside academia?
Re:Haskell: The Bad Parts, part 2 (2020) by centimeter on Tuesday February 09, 2021 @06:06PM (#26083712)
Several large financial firms have significant Haskell codebases, plenty of random cryptocurrency startups are Haskell based, some of the Google TPU chips are/were written in Haskell/Clash, Facebook has a big Haskell codebase, Starbucks and Target use it, there are several national security/defense firms extensively using Haskell, etc. etc.

Just because you don't see a bunch of blog posts like "We rewrote our <useless product> in <language du jour>!" doesn't mean it's not being used. In fact, more serious companies tend to lean less heavily on the developer social media publicity circuit.

Re:Haskell: The Bad Parts, part 2 (2020) by one-punch on Tuesday February 09, 2021 @11:21PM (#26085722)
> Starbucks and ... use it

I have heard of Haskell used in companies mentioned by other comments, but I am surprised, pleasantly, that Starbucks uses Haskell.

Do you have a pointer (job posting, blog post, etc.) to Starbucks using Haskell? It could help me push for using Haskell by my employer, for example.

Re:Haskell: The Bad Parts, part 2 (2020) by T-R on Tuesday February 09, 2021 @04:08PM (#26082407)
Re:Haskell: The Bad Parts, part 2 (2020) by agentultra on Tuesday February 09, 2021 @04:22PM (#26082528)
They also occasionally contribute libraries like Haxl [0] and HsThrift [1]

[0] https://hackage.haskell.org/package/haxl

[1] https://engineering.fb.com/2021/02/05/open-source/hsthrift/

Re:Haskell: The Bad Parts, part 2 (2020) by lalaithion on Tuesday February 09, 2021 @03:29PM (#26082062)
Re:Haskell: The Bad Parts, part 2 (2020) by mightybyte on Tuesday February 09, 2021 @06:01PM (#26083668)
Starbucks uses a system with a Haskell frontend and backend for generating their personalized offers. I have it on good authority that it's probably been responsible for more than a billion dollars in revenue lift for Starbucks.
Re:Haskell: The Bad Parts, part 2 (2020) by one-punch on Tuesday February 09, 2021 @11:13PM (#26085677)
This is new to me.

I have heard of Haskell used in companies mentioned by other comments, but I am surprised, pleasantly, that Starbucks uses Haskell.

Do you have a pointer (job posting, blog post, etc.) to Starbucks using Haskell? It could help me push for using Haskell by my employer, for example.

Re:Haskell: The Bad Parts, part 2 (2020) by mightybyte on Tuesday February 09, 2021 @11:44PM (#26085820)
Starbucks themselves didn't use Haskell. They used a system built by another company that used Haskell.
Re:Haskell: The Bad Parts, part 2 (2020) by dgellow on Tuesday February 09, 2021 @03:34PM (#26082099)
Depends your definition of "significance" but Cardano is written in Haskell, and its main smart contract language is also Haskell.

https://cardano.org/

Re:Haskell: The Bad Parts, part 2 (2020) by codebje on Wednesday February 10, 2021 @01:11AM (#26086146)
CircuitHub is apparently built with Haskell. It's the most polished PCB manufacturing quote system I've seen, but "significance" is relevant. (Plus I've never actually used their service, since it's not priced for hobbyist manufacture of a small number of boards).
Re:Haskell: The Bad Parts, part 2 (2020) by mumblemumble on Tuesday February 09, 2021 @03:12PM (#26081908)
Pandoc comes to mind.
Re:Haskell: The Bad Parts, part 2 (2020) by tome on Tuesday February 09, 2021 @02:53PM (#26081748)
It might help if you define "of significance".
Re:Haskell: The Bad Parts, part 2 (2020) by jcelerier on Tuesday February 09, 2021 @04:26PM (#26082570)
> Maybe in 20-30 years will see these languages adopting higher-kinded types, rank-n types, GADTs, and more?

it's possible to express those in C++ pretty much since templates exist.