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

科技回声

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

GitHubTwitter

首页

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

资源链接

HackerNews API原版 HackerNewsNext.js

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

The philosophies of software languages, from Go to Elixir

26 点作者 UkiahSmith大约 6 年前

5 条评论

pcwalton大约 6 年前
&gt; Multicore processors and concurrent programming<p>&gt; To take full advantage of multicore processors, a programming language needs to provide mechanisms for concurrency…All of the languages in this chapter—Go, Rust, Kotlin, and Elixir—were specifically designed to address this need for concurrency.<p>This confuses concurrency and parallelism. All of these languages have support for I&#x2F;O concurrency. But the CPU parallelism support varies significantly. Go is fairly bad at such parallelism, because it doesn&#x27;t have generics for concurrent data structures, parallel iterators, etc. Rust has pretty good support for it, with Rayon and Crossbeam. Kotlin does too, since it inherits the Java ecosystem, including the excellent java.util.concurrent package. I&#x27;m not sure about Elixir; my understanding is that the Erlang VM is not really designed around shared memory, which limits the potential for CPU parallelism.
评论 #19695667 未加载
tramav大约 6 年前
&gt;<i>Kotlin:</i><p>&gt;<i>Some readers will question why this chapter doesn’t include Scala. Although it’s a language that has great support for concurrency, its original guiding philosophy was more centered in functional programming. Kotlin, however, which was inspired by Scala in a way, does have a specific focus on concurrency.</i><p>Something similar can be said about Kotlin: The main design goal is the two way interop with different platform APIs (JVM, JS, LLVM). And of course it has many features a modern general purpose language is expected to have. Specifically for asynchronous progamming it has coroutines. However, I think for asynchronous and parallel computing Scala and Clojure have more to offer...
azw大约 6 年前
Once the revision is published I welcome more comments&#x2F;corrections. I have never worked with Clojure and could easily be getting some part of what I write wrong.
评论 #19750869 未加载
azw大约 6 年前
Hi, I wrote the article. I wanted to thank you for the comments, I have updated the article to reflect these corrections.
abc_lisper大约 6 年前
Where is clojure?
评论 #19705958 未加载