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

科技回声

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

GitHubTwitter

首页

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

资源链接

HackerNews API原版 HackerNewsNext.js

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

Multiple Programming Language Implementations - This Annoys Me the Most

5 点作者 mudge超过 15 年前

3 条评论

gdp超过 15 年前
You use a language with no particular specification and no particular set purpose, and are surprised that it changes between point releases? I guess he's never used PHP then.<p>Languages divide reasonably cleanly into those that have no published semantics (formal or informal), those that have a published informal semantics, and those that have a published formal semantics. I use 'semantics' here to cover both the usual meaning and the semantic interpretation of syntactic constructs. On this continuum, there are very few with published formal semantics, and a huge number with no published specification whatsoever. I've heard proponents of these languages actually claim that "the compiler is the specification".<p>So if you use a language where the world view is "we'll do whatever the hell we want and then the compiler decides what it means!" then you can hardly complain when it all gets a bit confusing. That's reason number 77,061 for me not using Ruby.
mahmud超过 15 年前
If you find "multiple programming language implementations" annoying, chances are their respective communities find <i>you</i> annoying. For your own sanity, if something seems annoying to you, ask if there is a different way to do things.<p>His problems with Lisp and Ruby are contradictory: he hates Ruby because it has two competing major versions, not realizing what he wants is a <i>standard</i> specification of the language. Yet his problem with Lisp is that "it's big on reference documents".<p>Pick any Common Lisp implementation and any incompatibility with the specification is a bug.
评论 #781725 未加载
jacquesm超过 15 年前
This is a 'feature', not a bug.<p>It may annoy you, but then you should not try to get your head wrapped around languages that are currently probably best described as 'moving targets'.<p>Older, more mature languages, like COBOL, PASCAL, LISP and C (to a lesser extent C++) do not suffer from this. Conversely, they're slow to adapt to changing requirements and that is why if you wish to do clever stuff with a minimum of verbosity you find yourself on the bleeding edge of language development.<p>It's a price you are either willing to pay, or you'll be finding yourself writing a lot of code in a language that was not well geared towards the age of the internet.<p>PHP, Ruby, Python, Scala and even Java are under active development so you will have to make choices about which version you are going to stick to for the time being.
评论 #781899 未加载