TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: What do you dislike about statically typed functional programming?

5 点作者 maxhallinan将近 6 年前
I'm thinking of languages like Elm, Haskell, PureScript, and Standard ML.

6 条评论

kasey_junk将近 6 年前
Haskell - laziness can be exceedingly hard to reason about. Also it takes a lot of experience before you start designing your purity boundaries well.<p>Ocaml - figuring out the things surrounding the language (dependency management, concurrency, formatting, linting, etc)
karmakaze将近 6 年前
I haven&#x27;t learned&#x2F;used them enough to appreciate higher-kinded types and the whole category theory monad thing. Individual usages make sense but each could be done differently without the generality.<p>One language that looks interesting is Clean[0]. It uses uniqueness types for mutations or other impure operations which kind of reminds me of software-transactional-memory or borrow checking.<p>[0] <a href="https:&#x2F;&#x2F;clean.cs.ru.nl&#x2F;Clean" rel="nofollow">https:&#x2F;&#x2F;clean.cs.ru.nl&#x2F;Clean</a><p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Clean_(programming_language)" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Clean_(programming_language)</a>
bjourne将近 6 年前
Of those, I have only used Haskell (and F# which you didn&#x27;t mention). While Haskell is a pure language, it&#x27;s standard library is &quot;unclean&quot;. Functions in Prelude have idiosyncratic names (words, unwords?) and it doesn&#x27;t feel like they fit together.<p>But the real show-stopper for me is the five different string types Haskell has. I want to focus on algorithms and program design - not string conversions.
karmakaze将近 6 年前
I also looked at Elm and liked it a lot but wondered why there was so much controversy around Sum&#x2F;Union types and why they aren&#x27;t &#x27;just&#x27; added. If it was open-sourced and there was a fork that at least tried it, I&#x27;d be happier to use whichever one worked out for my use case.
mbrock将近 6 年前
I actually don’t like the way they manage data only through algebraic types passed around as parameters. That is one nice way to do things but I often find myself poorly reinventing relational stores or wishing for Datalog.
gigatexal将近 6 年前
What do <i>you</i> dislike?<p>I’m thinking it could be the static typing but as I’ve done more and more work in static typed languages I like them a lot more than dynamically typed ones.
评论 #20076420 未加载