ZH version is available. Content is displayed in original English for accuracy.
Advertisement
Advertisement
⚡ Community Insights
Discussion Sentiment
83% Positive
Analyzed from 1810 words in the discussion.
Trending Topics
#haskell#more#rust#language#tooling#ghc#https#foundation#decades#behind

Discussion (47 Comments)Read Original on HackerNews
I have not played around with it to see how that plays out with agentic coding. But it does seem like an interesting idea.
- the tooling is decades behind, say, Rust or Go
- finding the right library in looks very different in Haskell--you frequently start with the signature on Hoogle. Agents can learn this but it's not the same as "web search"
- creating the right solution also looks different. It's usually borne out of thinking about the types and coming up with the correct algebra. Again models can probably learn to create the right types and orient the solution around that, but it's not automatic
- same today as yesterday, laziness is a blessing and a curse. The runtime can do unpredictable things when you suddenly evaluate a deep thunk
- GHC directives effectively mean there are multiple "Haskells"
Some of those are a result of the "avoid success at all costs" mantra. You can't shake that off in a day. It will take a concerted effort to make it more amenable for seamless adoption.
Haskell continues to be my favorite language to write and read, but Rust is the more practical language with a rich type system. If you're looking for something approaching Haskell's expressiveness but with fewer of these issues, check out PureScript.
Laziness is hard to observe, maybe Strict and StrictData would become more popular in use within this context.
I haven't checked in a while now if effects have become the norm in the ecosystem, or if some solution exists for "string" types, but for me all of Haskell's expressivity is lost in the noise of endless conversion function, wrapper types when stacking monads, and import fiddling.
That's definitely not true, even if that was true maybe 6 years ago. As someone who's uses Haskell daily and also many other languages, I can see Haskell's tooling as more advanced than many others.
Also there's no support for Android and iOS, atleast not without spending months in recompiling GHC with haskell.nix or other third party projects.
Eventually I switched to Rust. It's tooling is so mature that I can focus on developing than compiling GHC.
Despite these demerits, I love Haskell language and lazy eval. I wish I can use it one day.
If only Rust had something like GHCi.
Stack and Cabal have longer history than cargo, and Stackage for puzzle dependencies.
> - GHC directives effectively mean there are multiple "Haskells"
A bit like macro libraries and what features are enabled where in Rust
Can AI not help speed this up?
As someone who DOESN'T use Haskell... What specifically is it missing?
Are you conflating ecosystem with tooling?
> If you're looking for something approaching Haskell's expressiveness but with fewer of these issues, check out PureScript
Rust is quite expressive. Is Haskell really substantially much more?
I do think Rust is a great language for LLMs because I think expressiveness is key.
No way. Where vibe-coded Rust contains tons of "unsafe", you can have your vibe-coded Haskell sprinkled with "unsafePerformIO" and "unsafeCoerce" ;)
* https://github.com/digitallyinduced/ihp/ is mainly written with Claude now
* https://jappie.me/haskell-vibes.html is gushing over agent-written Haskell
* https://discourse.haskell.org/t/anti-llm-sentiment-considere... huge thread about the divisiveness of LLM's from some person who loves using them with Haskell
I can see how agent coding is a nice fit for Haskell, since LLM's tend to be best at tasks where you can easily verify the output – and GHC lets you easily verify much more of your domain than say Python (sure you can test some of what dynamic typing doesn't catch, but LLM-written tests do not always do what you think they should[0]). At the same time, the LLMs tend to not code golf unless asked to, and they don't care if they have to wait for dependencies to compile, so that takes away the two major Haskell time sinks.
[0] https://haskellforall.com/2026/05/type-out-the-code#:~:text=...
The terseness of Haskell just hides the inherent complexity of the problem. The AI (or human) still needs to uncover that complexity in order to do non-trivial things.
Even without AI most of my Haskell time is spent thinking.
Also, I hand writing Haskell is one of my small after work pleasures.
Compact syntax is generally only a good thing for LLMs because it saves context windows and tokens.
Not mentioned in the update is that the Haskell Foundation is moving towards a model that already exists within the OCaml Foundation. The HF and OF have the same challenge: a shallow pool of (relatively) large sponsors.
Of course big successful firms have more money to contribute, and we are thankful for them. This move, whereby the HF will deploy more of its financial resources on technical challenges directly, is meant to attract the other 99.9% of firms using Haskell in production. Many firms, including my own employer, have a more tit-for-tat view of sponsorship.
If you have thoughts, or would like to get involved, do not hesitate to reach out to me! E-mail in bio
To make this possible, the Haskell Foundation will remain without an executive director for the foreseeable future.
Instead of having a full-time employee in charge of fundraising, events, coordination, mediation and much more, we will split these responsibilities between the Board and a new, part-time role dedicated to the Haskell Foundation’s financial sustainability."
Sounds a great move in principle.
Source, seen it play out in a non-technical nonprofit that after years of stagnation, went the other way of hiring executive staff to run the day to day stuff. And from currently being part of another organization that is flailing that way presently.
He also reflected on his time and Haskell usage at Facebook here: https://www.youtube.com/watch?v=gEWBHP0PvRw&list=PLQpeDZt0_x...
For example, one thing that is a friction point at my own job is knowledge of tooling for performance tuning and optimization. It's not that Haskell doesn't have this tooling, it's just not well-known.
Is there anything in particular you would need?
Slow build times, deployment to Linux when developing on macos still pain. Deployment is pain specially on commodity VPS.
Go is very easy to cross compile and deploy.
But Haskell is better for a few things, but I've hardtime deploying it
Anytime I push to my Haskell repos my actions automatically create static binaries for installation on my nodes.
It's almost a one-liner + a nix derivation import, works within a minute on incremental builds even on large projects: https://input-output-hk.github.io/haskell.nix/tutorials/cros...
Oh? Why is that?
Our metrics are also showing that Haskell usage is actually growing. So overall, can't complain!
Are people targeting it as a runtime for Haskell as well?
The thing that's so elegant about Haskell is that it allows you to express programmatic constructs at a very abstract level. Abstraction is almost by definition difficult to grasp. That's why it takes a decade and a half for (most) people to go from arithmetic to calculus.