atitit.编程语言会形成进化树--哪些特性会繁荣??通才还是专才的选型 现代编程语言的特性总结
atitit.编程语言会形成进化树--哪些特性会繁荣??通才还是专才的选型 现代编程语言的特性总结
1. 有一种观点,编程语言就像物种,会形成进化树,有的分支会死掉。
多年之后,你觉得语言会演化成什么样子?哪些特性会繁荣,又有哪些会枯萎?
这 好比讨论未来哪种基因会繁荣,答案是不可知的。我们知道的是,有的语言专长于一个小生态位而获得了成功。类似于吃竹子的熊猫,PHP“吃”初级用户设计的 网页,而且只要这个Web编程的生态位存在,它就可能继续成功下去。竹子没有了,熊猫也就没有了。
作者:: 老哇的爪子 Attilax 艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax
2. 但在地球的历史上,最成功的机体大多是通才,而不是专 才。
鸟类当中,企鹅更像专才,只在一个地方生活,而乌鸦却遍布世界,因为它们几乎能生长在任何地方并找到食物,此外它们还非常聪明。这也是我们为Perl 6设置的目标。
在“The Hundred-Year Language” 一文中,Paul Graham说得很好:我们无法知道一种延续了100年的语言到那时会是什么样子,但我们确定,它将从一种可演化的、能在一百年间满足新需求的语言起步。 Perl 6的设计秉持了这种可进化性的理念,那些最严格的规则多数都刻意保持语言对新需要的适配(严格的一遍解析和自时序语法便是两个例子)。当前的设计就大量使 用了从内部派生新语言的方法,处理诸如引号和模式匹配等次级语言,针对外部意图派生新语言也是一回事。
至于Perl 5会不会很快消失,我想指出的是,细菌、鱼类、蠕虫和各种简单的古生物依然遍布世界,尽管更复杂、更聪明的生命体已演化出来(至少我们自认为自己更聪明,可有时我并不十分确定)
3. 现代编程语言的特性
动态性
运行在Vm上
并发
Dsl///4gl
抽象>>>限制自然语言
垃圾收集..
自动资源释放
异常机制
逻辑式语言都
4. 程序设计语言的发展经历了五代:
第一代语言:机器语言
第二代语言:汇编语言(亦称符号语言)
第三代语言:高级语言
|__ 面向过程(如C、BASIC、Pascal)
|__ 面向对象(如C++、java、C#)
第四代语言:数据库编程语言(也叫非过程化语言)
第五代语言:被称为人工智能语言
5. 编程思想的发展: 面向机器 到了面向应用
atitit.编程语言会形成进化树--哪些特性会繁荣??通才还是专才的选型 现代编程语言的特性总结的更多相关文章
- Atitit vod ver 12 new feature v12 pb2 影吧 视频 电影 点播 播放系统v12新特性
Atitit vod ver 12 new feature v12 pb2 影吧 视频 电影 点播 播放系统v12新特性 项目分离从独立的se ver Run mode from brow ex to ...
- 如何给不支持新特性的浏览器打补丁(让老版本IE兼容新特性)
一个非常棒的 JavaScript 框架叫做 Modernizr(http://www.modernizr. com),用于向缺少 HTML5/CSS3特性支持的浏览器打补丁.由 Alexander ...
- 重新想象 Windows 8.1 Store Apps (91) - 后台任务的新特性: 下载和上传的新特性, 程序启动前预下载网络资源, 后台任务的其它新特性
[源码下载] 重新想象 Windows 8.1 Store Apps (91) - 后台任务的新特性: 下载和上传的新特性, 程序启动前预下载网络资源, 后台任务的其它新特性 作者:webabcd 介 ...
- 【Java8新特性】一张图带你领略Java8有哪些新特性
写在前面 很多小伙伴留言说,冰河你能不能写一些关于Java8的文章呢,看书看不下去,看视频进度太慢.好吧,看到不少读者对Java8还是比较陌生的,那我就写一些关于Java8的文章吧,希望对大家有所帮助 ...
- [译]java9新特性:在接口中用pirvate方法让default(java8接口特性)更简练
Java8 带来了许多改变,其中之一就是default修饰的接口方法. 这些方法改变了我们已知的接口,现在我们能够在接口中定义默认实现方法.默认实现方法的不同之处在于,在接口中用default修饰抽象 ...
- atitit.高级编程语言的特性 and 未来趋势与进化.doc
atitit.高级编程语言的特性 and 未来趋势与进化.doc 1 编程语言的发展历程 1 1.1 编程语言的进化,起始发现背后的思想 :不论什么两个系统之间的复杂性,都能够通过加入一个抽象层要屏蔽 ...
- atitit.编程语言的未来趋势与进化结果
atitit.编程语言的未来趋势与进化结果 1 语言就像物种一样,会形成进化树,没有前途的分支将枯死脱落. 1 2 机器语言 1 3 汇编语言 2 4 C语言, 硬件抽象层 2 5 高级语言:java ...
- Atitit 编程语言原理与概论attilax总结
Atitit 编程语言原理与概论attilax总结 1. 语言的分类1 2. 语言评价标准1 3. 编程语言原理(第10版) 目录: 2 4. 代码之髓:编程语言核心概念2 5. <编程语言实现 ...
- Atitit. visual studio vs2003 vs2005 vs2008 VS2010 vs2012 vs2015新特性 新功能.doc
Atitit. visual studio vs2003 vs2005 vs2008 VS2010 vs2012 vs2015新特性 新功能.doc 1.1. Visual Studio2 1.2. ...
随机推荐
- jquery获取table指定行和列的数据(当前选中行、列)
//不多说,直接上代码.$("table tr").click(function() {//为表格的行添加点击事件 var tr = $(this);//找到tr原色 var td ...
- [Android开发教程]Android官网developer training中文版教程 - 1.1.1 创建一个Android项目
本系列持续更新中.转载请注明来源. 前言:近期打算系统学习一下Android开发,发现Android官网上的developer training也是个非常好的学习资料,于是想到一边学习一边写一个中文版 ...
- mysql 中 unix_timestamp和from_unixtime函数
1.unix_timestamp 将时间转化为时间戳.(date 类型数据转换成 timestamp 形式整数) 没传时间参数则取当前时间的时间戳 mysql> select unix_time ...
- Redis安装、主从配置及aof使用
找了02,03,04三台机器,04做主,02做从,03做客户端. 都使用jumbo install redis安装了Redis(server+client). 在 02 从的 ~/.jumbo/etc ...
- Node.js:EventEmitter类
一.EventEmitter 类 Node.js 所有的异步 I/O 操作在完成时都会发送一个事件到事件队列. Node.js里面的许多对象都会分发事件:一个net.Server对象会在每次有新连接时 ...
- 标准C++类std::string的内存共享和Copy-On-Write技术
标准C++类std::string的 内存共享和Copy-On-Write技术 陈皓 1. 概念 Scott Meyers在<More Effective C++>中举了个例子,不知你是 ...
- Android -- Options Menu,Context Menu,Popup Menu
Options Menu 创建选项菜单的步骤: 1. ...
- Cognos TM1_10.1.1服务端配置
场景:本文继Cognos TM1_10.1.1服务端安装 之后,简单的说一下本人对简单配置的拙见,确保服务端在安装过程一切正常,成功安装. 1:进入TM的Cognos Configuration 2: ...
- MYSQL获取自增主键【4种方法】(转)
转自:http://blog.csdn.net/ultrani/article/details/9351573 作者已经写的非常好了,我不废话了,直接转载收藏: 通常我们在应用中对mysql执行了in ...
- (剑指Offer)面试题52:构建乘积数组
题目: 给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1].不能 ...