2013/7/15 16:41 写于 家
第十一章 一百年后的编程语言
本章主要是讲了一百年后人们会用什么语言,以及咱们是否如今就能用这个语言呢?
在做者的观点中,编程语言是有进化的脉络的,许许多多的分支都会走入到死胡同中。这种现象已经存在了,例如Cobol语言。如今无人问津,没有任何语言继承它。
做者认为JAVA也是如此。它已经进化到头了。。你们不喜勿喷啊。
为何咱们要去想那些符合进化脉络的语言呢?由于选择接近进化的主干可能都是最佳方案,若是你选错了,你就可能被你的对手抢走猎物。
编程语言是聚合的,并且人们常常会借鉴别的语言。只要你能认清这个进化的线路,那么你就能够设计出新的语言了。
任何语言都是有基本运算符的部分和其余部分组成的。做者认为,基本运算符应该是越简单越好。那些内核越小,最干净的编程语言才会存在于进化的竹竿上。一种语言的内核设计得越小,越干净,它的生命力就越顽强。
为何咱们如今能预测将来的语言呢?由于编程语言的进化很慢,它不像技术那样能够跳跃式的发展。因此,预测是有可能的。
咱们知道,即使是将来硬件的速度不符合摩尔定律,可是,100年后的硬件的速度绝对比如今快得多。因此,对硬件资源的浪费就不可避免的出现了,咱们每一代人都在作着上一代人以为浪费的事情。浪费有2中,一种是好的浪费,一种是坏的浪费。咱们须要的是好的浪费。那么,怎么充分的利用硬件的速度而最有利地去浪费它呢?
一。在设计语言的时候,咱们要问本身,何时能放弃一点效率,而去让编程更为方便呢?
在之前,咱们为了节约效率,而定义出了字符型,可是字符型就是列表的子集,彻底能够用列表去替代它。可,为了效率,仍是弄出来个字符集。正确的作法是把语言的语义与语言的实现予以分离。
二。对实现的方式少作限制,提升程序的灵活性。
essay就是试试作。看成者开始写软件的时候,他们其实不知道最后会写出什么结果。
三。在应用软件和硬件之间设置不少的软件层。这会让编程灵活起来,并且可重用性提升。
并行计算只会出如今部分必须的应用程序上。
性能分析器会变得愈来愈重要!
一百年后的语言应该是简单容易上手的,能够很快就写出初版。因此,当你要设计语言是,你要脱离现有的束缚,直接写下你想写的程序。
判断语言设计好很差,就是问本身是否是能把它写的更短一点。若是接系树越小,每每就越省力。
在有些人看来,大部分语言内核早在1958年就已经设计出来了。
做者的观点是:1.一百年后的编程语言在理论上今天就能设计出来 2.若是今天真能设计出这样一钟语言,极可能如今就适合编程,而且可以产生很好的结果。
当你设计语言的时候,心中紧紧记住目标,可让你不会偏离方向。编程
转载请代表出处 http://www.huangweibin.com/编程语言