编程语言发展势.docVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编程语言发展势

编程语言发展趋势 (注:未得作者许可,不可随意发表、转载此篇文章。) 最近IT界一直再闹着这么几件事:苹果的ipad电脑、facebook社交网络、Google的android系统等等。说不清、道不明! 还好,思考下编程语言 Anders在2010年荷兰演讲之时提到语言发展的三个相互融合影响的趋势: 函数式 、动态性 、并发性 C语言的发家史 先说下C语言: 这个东东是Dens Lich在70年代开发的语言,关于C我就不多扯了。说下搞笑的:60年代末ATT和麻省理工学院、IBM三强联合准备开发个分时的大型操作系统Muit,结果不是成功,而Ken Tomcas特别爱玩,开发个游戏在Muit上玩,结果发现太卡了,心里很不爽,于是打算业余时间开发个系统玩自己编写的游戏。结果,在当时24k的内存条件下,12k运行系统,12运行自己的游戏。发现运行不错,带劲!就喊着Dens Lich两个人杀了十几回合,恰巧被一个同事发现了,很讽刺幽默的说了一句英语------就是后来“被阉割的Muit”的缩写----大名鼎鼎的Unix!!! 再后来呢,两个人发现汇编写的程序移植性太差,写烦了,就商量着用高级语言写个可移植性好的,刚开始打算用Fortan,发现实现太难,后来用BCPL,发现还是不行,后来干脆在前人的基础上他们自己搞了个语言----就是C!!! C语言之所以伟大我觉得不是它的应用领域、不是它的排名、甚至不是它对其它语言的影响(当然,这些足以够伟大了,但还是不太本质!),而是它是阐述冯诺依曼计算机体系思想最好的语言!!! 繁殖 语言刚开始最初实际生产力应该是assembly,而后在1954年产生了世界上第一个高级语言----Fortan。 C语言产生的同时,有一个simula的语言在之前就产生了,有一个Lisp语言也产生了。似乎注定它们三者的来世情缘就这样结下了梁子! C:命令式、过程式语言;simula:面向对象语言;Lisp:函数式语言 后来 simula生了个孩子-?smalltalk生了个孩子-?self. Lisp语言后来生了许多孩子,它的其中一个孩子后来又生了一个孩子?scheme 于是,所有的问题就是这样出现的,simula派系和smalltalk派系之争在C的基础上就生了后来赫赫有名C++和Object-C; 所以,Simula这一路走来就是C-?C++?Java?C# Smalltalk这一路 C-?object-C Self-这一路--?Javascript-?python-?Ruby 当然,还有C?Perl,C?PHP 但是,关系不仅仅是上面的,或者说不全面,或者说有的是错误 原因? Simula是世界上第一个面向对象的语言,它有一个思想就是:类和对象。 这样,程序就比较严谨。 而它的孩子Smalltalk,它的思想确是:去类化。这样,程序就比较灵活。 而做为孙子的Self更是猖狂:完全去类化,一切皆是对象。 它根本就没有类的概念。 所以,不难看出,所谓面向对象核心就是对象,有人对类有看法,这样发展下去,就孕育着语言的动态性,增加了灵活性,有脚本化的趋势。当然,执行效率自然下来了,工作效率上去了。这是面向对象的分化,它们的分化引子和命令式语言C一结合就这样神奇的爆发了。不过,不仅是这样!!! Lisp算是古老悠久至今仍散发着香味的函数式语言。它的思想就是链表和函数。链表就是动态类型的一种体现,这种链表就是它什么都可以加而对于函数,它算是开天辟地第一个,但我却不得不说,它的函数特性并没有消除所谓命令式语言所谓的“副作用” 后来,一个Haskell语言出世了。它的思想是:无分支、无循环、无顺序、无类型最最彻底的“无副作用”的完全函数式语言(呵呵),而且Lambda表达式就出自此兄呀。 Lisp所谓的一个孙子Sheme也干了一件石破天惊的事:函数是头等公民,它把函数当做一种类型,就像C中的int ,float类型一样定义赋值,所谓的“function”类型就是出自此君之手。 所以,这些思想和命令式语言、面向对象语言一结合就爆发了奇迹,和面向对象语言一样,函数式语言本身也有动态性特性、脚本化趋势 顺便说下 最后特别提一下C#,Javascript,Python 呵呵 ,C#4.0等等我就不说了 至于Javascript语言,我一点奇怪了,那个年仅25岁小伙子设计的语言------每当一些语言之父、大师提起它时都两眼发光,话语不断、兴趣不断。 的确,Javascript太优美了,这源于它的语法和思想,但这点即使一些有经验的人也认它是C语法和self思想孕育的,但实际上,更确切的感受和认可是它是披着C语法的古老的Lisp语

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档