5 ms·
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 severa
by agentultra 6y ago
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_Dependently_typed_Haskell_in_industry_experience_report https://www.researchgate.net/publication/334751646_Dependent...
- haskellandchill 6y agoGrowing healthy Haskell team? Checks notes oh I already applied :)
- roflc0ptic 6y agoHave you tried Digital Asset?
- haskellandchill 6y agoYes, general rule is if there’s a Haskell job I’ve at some point applied for it.
- lambda_obrien 6y agoI want to work in Haskell, do you have any other suggestions for companies?
- haskellandchill 6y agoBitnomial, 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.
- roflc0ptic 6y agoIOHK, Lumi are two others
- lambda_obrien 6y agoThanks!
- lambda_obrien 6y agoThanks!
- giovannibonetti 6y agoWhat options do you know about in the EU and UK?
- why_Mr_Anderson 6y agoIs there anything of any significance written in Haskell outside academia?
- dgellow 6y agoDepends your definition of "significance" but Cardano is written in Haskell, and its main smart contract language is also Haskell. https://cardano.org/ https://cardano.org/
- tome 6y agoIt might help if you define "of significance".
- mumblemumble 6y agoPandoc comes to mind.
- lalaithion 6y agoShellcheck - https://www.shellcheck.net/ https://www.shellcheck.net/ PostgREST - https://postgrest.org/en/v7.0.0/ https://postgrest.org/en/v7.0.0/ Semantic - https://github.com/github/semantic https://github.com/github/semantic Pandoc - https://pandoc.org/ https://pandoc.org/
- T-R 6y agoFacebook's spam filtering: https://engineering.fb.com/2015/06/26/security/fighting-spam-with-haskell/ https://engineering.fb.com/2015/06/26/security/fighting-spam...
- agentultra 6y agoThey also occasionally contribute libraries like Haxl [0] and HsThrift [1] [0] https://hackage.haskell.org/package/haxl https://hackage.haskell.org/package/haxl [1] https://engineering.fb.com/2021/02/05/open-source/hsthrift/ https://engineering.fb.com/2021/02/05/open-source/hsthrift/
- mightybyte 6y ago
- lambda_obrien 6y agoHas anyone that you know of started using linear types for anything interesting yet?
- jcelerier 6y ago> 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.