[C程序设计语言] Eric Raymond:与 C 语言长别离

发信人: sunseraphic (この世界がいつかは幻に変わると), 信区: CProgramming
标 题: Eric Raymond:与 C 语言长别离
发信站: 水木社区 (Wed Jan 31 03:55:59 2018), 站内

这几天来,我在思考那些正在挑战 C 语言的系统编程语言领袖地位的新潮语言,尤其是
Go 和 Rust。思考的过程中,我意识到了一个让我震惊的事实 —— 我有着 35 年的
C 语言经验。每周我都要写很多 C 代码,但是我已经记不清楚上一次我 创建一个新的
C 语言项目 是在什么时候了。

如果你完全不认为这种情况令人震惊,那你很可能不是一个系统程序员。我知道有很多
程序员使用更高级的语言工作。但是我把大部分时间都花在了深入打磨像 NTPsec、 GP
SD 以及 giflib 这些东西上。熟练使用 C 语言在这几十年里一直就是我的专长。但是
,现在我不仅是不再使用 C 语言写新的项目,甚至我都记不清我是什么时候开始这样做
的了,而且……回头想想,我觉得这都不是本世纪发生的事情。

这个对于我来说是件大事,因为如果你问我,我的五个最核心软件开发技能是什么,“
C 语言专家” 一定是你最有可能听到的之一。这也激起了我的思考。C 语言的未来会怎
样 ?C 语言是否正像当年的 COBOL 语言一样,在辉煌之后,走向落幕?

我恰好是在 C 语言迅猛发展,并把汇编语言以及其它许多编译型语言挤出主流存在的前
几年开始编程的。那场过渡大约是在 1982 到 1985 年之间。在那之前,有很多编译型
语言争相吸引程序员的注意力,那些语言中还没有明确的领导者;但是在那之后,小众
的语言就直接毫无声息的退出了舞台。主流的语言(FORTRAN、Pascal、COBOL)则要么
只限于老代码,要么就是固守单一领域,再就是在 C 语言的边缘领域顶着愈来愈大的压
力苟延残喘。

而在那以后,这种情形持续了近 30 年。尽管在应用程序开发上出现了新的动向: Jav
a、 Perl、 Python, 以及许许多多不是很成功的竞争者。起初我很少关注这些语言,
这很大一部分是因为在它们的运行时的开销对于当时的实际硬件来说太大。因此,这就
使得 C 的成功无可撼动;为了使用和对接大量已有的 C 语言代码,你得使用 C 语言写
新代码(一部分脚本语言尝试过打破这种壁垒,但是只有 Python 有可能取得成功)。


回想起来,我在 1997 年使用脚本语言写应用时本应该注意到这些语言的更重要的意义
的。当时我写的是一个名为 SunSITE 的帮助图书管理员做源码分发的辅助软件,当时使
用的是 Perl 语言。



from 水木社区 电脑技术区十大热门话题 http://ift.tt/2BDVPRp
via IFTTT

评论

此博客中的热门博文

丰田将在 2019 东京车展上展出一台超迷你的都市型电动车

[数字家庭] [原创]北京联通IPTV的完美方案

英特尔将推出更多支持 e-SIM 的 modem