这篇文章本来是我从comp.lang.c++上面看到的东西,当时看完之后也没有想把它翻译过来,但是最近我要在我们学校上的一个校刊写一点东西,就想想把它翻译了算了,初次动笔翻译别人的文章,出错之处,敬请包涵。
Matthew
Languages need reasons to be (commercially) successful.
There are lots of languages and yet most of them are not widely used or
accepted even when they are clearly more applicable to the problem at hand.
I've seen people writing AI systems in C rather than use LISP or Prolog
because "C is our standard and Prolog is for weirdoes (that's practicallya quote.).
For me, it all comes down to sponsors. Languages need sponsors. They must
be programmers (i.e. peer sponsorship) or commercial organisations(i.e. financial sponsorship).
Microsoft used to sponsor C++, but now they prefer C# (i.e. their version of Java). They also sponsor VB.
编程语言(商业上)成功的原因世界上有很多的(编程)语言并且他们已经在他们各自的的领域里取得了很大的应用。我曾经见到过有人用C来写一个AI系统而不是用AI系统常用的LISP或Prolog,应为他们认为"C"是一种很标准的语言,而Prolog是给那些很古怪的人用的。而对我来说,这仅仅取决于个人的爱好。(编程)语言就需要她的爱好者的热情。这些爱好者可能是程序员或者是商业公司。Microsoft原来是"喜欢"C++的,但是他们现在更喜欢C#(这是他们的java),他们当然仍然喜欢VB。
Sun never liked C++ for many reasons. Sun sponsors Java and C.
No-one apart from IBM ever liked SmallTalk and IBM only half-liked it.IBM advocate Java.
Amateur programmers (most programmers) like easy to program, powerful
languages with high level abstractions They advocate Python, Perl,
Ruby.
SUN因为很多原因而从来就没有喜欢过C++,他们只喜欢java和c。
除了IBM之外很少人喜欢SmallTalk,其实IBM也仅仅是关注它而已,IBM现在鼓吹的是java。业余的编程爱好者(大部分)喜欢那些很简单并且很powerful的语言,象Python,Perl,Ruby.
C++ is too complicated for 99% (if not more) of all programmers. If less
than 1% of programmers can program good C++, then by definition there is
no peer sponsorship. There is no financial sponsorship without MS, so who's
going to look after C++?
C++对99%的程序员来说真是太复杂了,如果有仅仅1%的程序员能够写出很棒的C++代码的话,那么世界上就没有peer sponsorship这一说了。如果没有了微软的财政支持的话,很难说还会有人会如此热衷于C++.
What happends to languages which aren't sponsored? They become niche
languages, used by academics or commercially in certain specialist
areas:
那么对那些没有"支持者"的语言来说,他们又该走向合方那?他们会变成小范围语言,被那些学院派或者一定范围内的商业公司所使用。
Here's a far from comprehensive list:
Prolog - Academics only
Lisp - Emacs programmers and academics
Fortran - Scientists and academic scientists
Tcl/Tk - ?
Objective-C - ?
Eiffel - ?
ML - Academics
Scheme - Academics
SmallTalk - Acadmics
Pascal/Delphi - older home hobbysists
Basic - entry level commercial programmers
Cobol - entry level maintenance/commercial programmers
....
(? means I have no idea who uses these languages.)
我这里有一份清单:
Prolog -学院派
Lisp -Lisp程序员合学院派
Fortran -科学家和学院派科学家
Tcl/Tk -?
Objective-C -?
ML -学院派
Scheme -学院派
SmallTalk -学院派
Pascal/Delphi -非专业人士
Basic -入门级商业程序员
Cobol -入门级维护/商业程序员
......
(?代表我也不知道谁正在使用这些编程语言)
It's my opinion that C++ is joining this list. It no longer has a reason to
escape the pull of obscurity. It has no financial sponsorship and it's
peer sponsorship is diminishing. I'm not sure what it's niche will be, but it's dying.
我得观点是C++也正将要被加入到这个列表中来。他不再有可能逃出那种冥冥中的力量。他没有财政上的支持者
,并且已经失去了往日的"贵族"地位.我不知道他的“生存区”会在那里,但是我可以确定,他已经死了。
I have no axe to grind. My favourite language is Lisp, it's what I
learned
(well) first and it is suitable for many problems. However, I realise
that
it has no sponsors and so I work with what I have (i.e.
Java/C/Python/Ruby).
我没有什么可抱怨的。我最喜欢的语言是Lisp,这是我最先学习的东西,并且我认为他几乎可以胜任所有的工
作,但是我觉悟到他没有自己的"后台",所以我就用我现在用的东西(比如java/C/Python/Ruby)。
I think that this will be the case for C++ programmers. Move on and remember what you learned.
"
我觉得对于C++程序员来说他们也需要经过这么一个过程。记着你所学的继续过下去。
...