大发彩神公司在哪里官方编程语言之父谈语言设计,龟叔大赞TypeScript

  • 时间:
  • 浏览:20
  • 来源:彩神8APP官网

争论哪门编程语言孰优孰劣,长期以来就有系统程序运行运行员乐此不疲的大发彩神公司在哪里官方“娱乐活动”。四种 说大发彩神公司在哪里官方是娱乐活动,因此四种 争论到最后往往只是人及所有所有在发泄情绪,再则只是,脱离使用场景去讨论所谓哪门语言大发彩神公司在哪里官方更好并没意义。

作者:局长来源:开源中国|2019-04-26 09:17

争论哪门编程语言孰优孰劣,长期以来就有系统程序运行运行员乐此不疲的“娱乐活动”。四种 说是娱乐活动,因此四种 争论到***往往只是人及所有所有在发泄情绪,再则只是,脱离使用场景去讨论所谓哪门语言更好并没意义。

但因此让编程语言作者坐在同時 讨论编程语言会产生如何的反应,水平算不算会比亲戚亲戚大伙高到不知哪里去?

本月初由西雅图 Python 开发者举办的首届年度慈善活动(Puget Sound Programming Python, PuPPy)邀请到了 Java, Python, TypeScript 和 Perl 创始人同時 讨论编程语言设计的过去和未来。

PuPPy 活动旨在为 Computer Science for All (CSforALL) 筹集资金,该组织致力于使计算机课程成为教育中不可或缺的大发彩神公司在哪里官方一偏离 。

参与本次讨论的嘉宾为四位编程语言创始人,分别是:

  • Guido van Rossum,Python 作者

  • James Gosling,Java 作者和***设计师

  • Anders Hejlsberg,Turbo Pascal 编译器的主要作者,Delphi、C# 和 TypeScript 开发者

  • Larry Wall,Perl 作者

活动中这四位编程语言之父的谈论主题包括设计编程语言的主要原则、编程语言的类型系统、编程语言的可维护性和编程语言设计的未来。

下面不妨看看四种 开山鼻祖级别的大牛,对编程语言设计有如何的看法。

设计编程语言的主要原则

在讨论四种 话题时,Python 之父 Guido van Rossum 认为,设计编程语言与 JK罗琳写《哈利波特》有或多或少共通之处,罗琳为整部小说打大发彩神公司在哪里官方造的架构是天才的操作,她在***本书中描写的或多或少细节在第六和第七本中成了重要的情节。这和设计编程语言一样 —— 时要关注或多或少细节,比如关键字和编码风格。但无论决定四种 都时要保证在未来找到使用四种 细节的新妙招,就像JK罗琳一样。

Java 作者 James Gosling 被问到 Java 遵守的设计原则时表示,Java 并就有由人及所有所有热情驱动的项目,最初只是计划构建一另两个原型(当时 Gosling 和他的团队正在进行一另两个涉及嵌入式系统领域的项目,Gosling 负责从编程语言的宽度来僵化 工作),一刚开始只是希望要做得比 C 语言更好,然而很久 失控了,项目的其它偏离 变成了四种 背景,最终只留下 Java。它基本上是为了帮助开发者解决关于数据的大问题,四种 大问题往往是因较差的网络、安全性和可靠性而意味。

Perl 作者 Larry Wall 称人及所有所有是“语言学家”而就有计算机科学家,他希望创发明人家 类似自然语言的语言。对此,Larry Wall 举了一另两个例子进行解释,与其让亲戚亲戚大伙进入大学校园去决定亲戚亲戚大伙走向何处,倒不如通过观察亲戚亲戚大伙想走的路,因此在四种 地方铺设捷径。Perl 的基本设计原则是为所有事物都提供 API,目标是成为出色的文本解决语言,同時 也是胶水语言。

Anders Hejlsberg 表示他参与开发编程语言的过程中就有遵守一另两个原则:「一另两个妙招只做一件事」。Hejlsberg 认为太少的妙招很因此会意味误入歧途,并在开发后期才会意识到大问题。与 Guido 的观点类似,Hejlsberg 也认为在设计编程语言时,所做的任何决定都时要进行全局考虑,与之共存的理念理应贯穿整个开发过程。

编程语言的类型系统

Java 之父 Gosling 表示在打造 Java 的雏形时就已重点关注性能大问题,而提高性能的一另两个关键因素只是类型系统,这对构建优化编译器和提前进行正确性检查等大问题非常有用。

Hejlsberg 将类型系统视为“工具性”的功能,开发者喜欢 IDE 提供的代码补全、重构和代码导航四种 功能,而这背后都离不开具有类型系统的编译器。Hejlsberg 只是认为编程语言加带了类型系统就能提升开发者的生产力,他觉得开发者使用动态语言,因此以非侵入性妙招来加带类型特性反而能提高开发带宽。

编程语言的可维护性

Guido 认为,因此希望编程语言具有可维护性,在灵活和规范的妙招之间保持平衡非常重要。动态语言对于开发小型项目非常有用,但大型项目时要采用严格的类型检查,因此因此编程语言四种 也能实现四种 平衡就***不过了。这只是为四种 Guido 计划在 Python 中加带类似 TypeScript 的技术。

除了类型系统,重构引擎对编程语言的可维护性也至关重要,通过它也能 更容易地同時 执行数百万行代码的大规模重构。Hejlsberg 表示 TypeScript 的起源正是日益庞大的 JavaScript 代码库,代码库越大,维护它们就变得越加困难,四种 代码逐渐成了 “write-only code”。为了易于重构,时要对代码进行语义理解,而四种 语义理解的工作恰好时要一另两个类型系统。

编程语言设计的未来

当被问及编程设计的未来时,James Gosling 分享了一另两个尚未充分探索的领域 —— 为 GPU 编写代码。他不得劲指出目前尚没法 任何编程语言也能 像 GPU 那样工作,而在该领域有很大的发展空间。

TypeScript 核心开发者 Anders Hejlsberg 表示,编程语言的发展带宽不用像硬件或或多或少技术一样快,在演进方面,编程语言更像是数学和大脑。因此直到今天,亲戚亲戚大伙还在用 200 年前发明人家 的语言在编程,而函数式编程的原则几乎也就有在 200 年前提出的。另外,Hejlsberg 也认为没法将简单地把语言分为面向对象或函数式编程曾经的单独类别,因此现代编程语言正逐渐成为多范式编程语言。

【编辑推荐】

【责任编辑:

张燕妮

TEL:(010)684762006】



点赞 0