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

科技回声

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

GitHubTwitter

首页

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

资源链接

HackerNews API原版 HackerNewsNext.js

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

A Critique of Standard ML (1992) [pdf]

77 点作者 philonoist超过 6 年前

3 条评论

FullyFunctional超过 6 年前
I always had a beef with this paper; so many of the issues are much better solved in Haskell, yet he doesn&#x27;t introduce it directly until he has something to criticize. Unfortunately the critique reveal a very poor understanding.<p>First point, lazy evaluation incurs a mutation when the whnf is reduced. However, this mutation occurs at most once and after that the value is immutable just like in SML. Furthermore, the update is not directly exposed to the programmer and thus the compiler can implement it in a way that works efficiently in the presence of generational GC. See the GHC papers on how.<p>Second point, on polymorphic overloading he claims that Haskell &quot;allow run-time resolution of overloading&quot;. Mark P. Jones and others have show how this overhead can be largely eliminated via partial evaluation applied to the type dictionaries. The use of polymorphic overloading is pervasive in Haskell code because it&#x27;s incredibly useful so the &quot;apparently small gains&quot; is complete and utter nonsense.<p>In many ways O&#x27;Caml is a better SML than SML, but Haskell, and especially the GHC variant, has a type system that is light years ahead of both.<p>In the modern world there are many variations on the theme, but the language Rust (which borrows many ideas from these) might become the most popular yet.<p>EDIT: typo
评论 #18843574 未加载
评论 #18846426 未加载
评论 #18844862 未加载
评论 #18844485 未加载
kristianp超过 6 年前
The Author is Andrew Appel, who wrote &quot;Compiling with Continuations&quot; (92). He&#x27;s still publishing: <a href="http:&#x2F;&#x2F;www.cs.princeton.edu&#x2F;~appel&#x2F;papers&#x2F;" rel="nofollow">http:&#x2F;&#x2F;www.cs.princeton.edu&#x2F;~appel&#x2F;papers&#x2F;</a>
评论 #18843893 未加载
anfilt超过 6 年前
Not much of expert here, but have played with ML. I find interesting that he criticizes &quot;Restrictive type system&quot;. However, also at the same time likes the &quot;Compile-time type checking&quot;.<p>I definitely did not read the entire paper in detail considering it&#x27;s length. However, he brings up ML&#x27;s type system a lot. I thought that was one ML&#x27;s main advantages. Although, at the same time criticizing some of the decisions or results from those decisions.
评论 #18844061 未加载