Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1119502
  • 博文数量: 284
  • 博客积分: 8223
  • 博客等级: 中将
  • 技术积分: 3188
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-01 13:26
文章分类

全部博文(284)

文章存档

2012年(18)

2011年(33)

2010年(83)

2009年(147)

2008年(3)

分类:

2008-12-02 21:14:44

   这两天,闲来没事,研究了一下其他的编程语言。不看不知道,原以为世界上只有C、C++、.net和java,现在才知道,原来世界这么大。。。
   之前关心的那些叫做静态语言,与之相对的,还有动态语言,即所谓的dynamic Language。动态语言,准确地说,是指程序在运行时可以改变其结构:新的函数可以被引进,已有的函数可以被删除等在结构上的变化。动态类型语言的优点在于方便阅读,不需要写非常多的类型相关的代码;缺点自然就是不方便调试,命名不规范时会造成读不懂,不利于理解等。静态语言与之相对。
   给我的感觉,传统静态语言用于程序的框架构建,而静态语言就像是战场上的特种兵,小巧精干但不可能作为主要的武器使用。所以,我个人认为将动态语言嵌入到静态语言中去使用,应该是未来程序发展的方向。关于这方面,Jim Hugunin在PDC-2008讲座中提到C.net已经可以通过DLR(Dynamic Language Runtime)将IronRuby、IronPython、C#、VB.net以及传统语言揉合在一起。而JRuby的使用更是java虚拟机JVM开始和动态语言进行结合的证明。
  总的来说动态语言有如下几大类:
  1.ruby:
  2.Python:
  3.Perl:
  4.PHP:
  5.javascript
  最后两个是用于网页编程的;对于之前三个,为了加快传统语言和动态语言的联合,出现了诸如IronRuby、IronPython(针对C#平台)和JRuby、JPython(针对JVM系统)的变种。
  除此以外,函数语言也是一种非常奇妙的编程体验,比如,Haskell,尤其是当事务内存编程方式提出后,这种函数语言得到了广泛的推广。
  由于本人的技术有限,对动态语言的了解仅此而已,我想存在既有价值,有时间的话,我会去逐个研究,看看能否比较出各种语言之间的差异。相信动态语言能够改变我们的传统编程习惯。
阅读(1007) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~