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

科技回声

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

GitHubTwitter

首页

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

资源链接

HackerNews API原版 HackerNewsNext.js

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

Ask HN: Why there are so many programming languages?

7 点作者 gembird超过 11 年前

5 条评论

theseoafs超过 11 年前
The big reason is that different languages do different things well, and new languages try to capture the good traits of other languages or language families. Maybe you like the JVM and the surplus of packages that are available for it, but you hate writing Java code and want a Lisp-like language instead: that&#x27;s how you get Clojure. Or maybe you like C and its syntax and native performance, but you want the type-safety, memory-safety, and support for concurrency that modern languages offer: you&#x27;ve got Rust. Or maybe you just love Ruby&#x27;s syntax and idioms but want the performace of machine code: that&#x27;s the motivation behind Crystal, which is a newer, less popular language.<p>It&#x27;s all about the transmission of ideas. &quot;I&#x27;m going to take traits A and B from language X, and traits C and D from language Y, all while avoiding traits E and F from language Z.&quot; You try to isolate the good ideas from languages and suppress the bad ones -- but your new language is sure to have some bad ideas of its own, so somebody&#x27;s bound to reinterpret it later if your language gets sufficiently popular. There&#x27;s no language that&#x27;s perfect for every single use-case, and there never will be, so this will probably continue on forever.
samsquire超过 11 年前
We have no idea what we are doing.<p>More seriously, Languages are linked to cognition and thought processes. I wouldn&#x27;t go so far as to say they&#x27;re a serialisation or marshalling of thought but you could see language as the rules that dictate the semantics of communication.<p>Like human languages, they simultaneously evolve and cross pollenate as we improve our &#x27;vocabulary of semantics&#x27;.
ankurdhama超过 11 年前
Anything that is &quot;general purpose&quot; can have many many variations. This is exactly the case with general purpose programming languages. Special purpose language (eg: SQL) doesn&#x27;t lead to such situations.
a3n超过 11 年前
Because everyone takes Compilers in school.
评论 #6790012 未加载
J_Darnley超过 11 年前
Because people refuse to use hand-written machine instructions!