Chinaunix首页 | 论坛 | 博客
  • 博客访问: 66088
  • 博文数量: 21
  • 博客积分: 78
  • 博客等级: 民兵
  • 技术积分: 115
  • 用 户 组: 普通用户
  • 注册时间: 2011-12-04 02:32
文章分类
文章存档

2012年(16)

2011年(5)

我的朋友

分类:

2012-02-25 06:56:53

原文地址:撼动IT界的10大编程语言 作者:doitwork

导读:开发者是否真的还需要一种新的编程语言呢?选择已经有那么多了,现有的语言都让开发者应接不暇,可是各种新的编程语言还是在以惊人的速度产生!答案就是随着多核CPU、云计算、移动及分布式结构的不断发展,简单的语法已经不能适用,我们需要更加强大的语言!而以下10种编程语言,或正在走向成熟,或还在开发,可是它们都以全新的视角演绎着软件开发的艺术,每一种语言,都有可能打开编程世界的新大门!

 

No.1

JavaScript在Web的交互性方面运用得很好,但是当Web应用程序的代码行过多时,它的弱点就会显现出来,因此,Google推出了新的结构化Web编程语言Dart用以替代JavaScript。

 

JavaScript标准的语法不同的是,Dart是通过类和接口来定义对象,并且允许编程者自由地定义静态变量,这使得Dart既能如JavaScript般流畅,又能更快更容易地存储且不易受干扰。此外,CSDN软件研发频道之前编译的会让你了解到更多Dart的便捷性。

 

No.2

Gavin King 称Ceylon是由红帽公司开发,被称之为“Java 杀手”。King是一名Java爱好者,他认为Java还有很大的改进空间。比如,缺少优秀的高阶函数,对元编程薄弱的支持,缺乏对结构数据定义的说明等等,Ceylon就是为了解决这些问题而产生的。现在Ceylon编译器已经支持在JVM上运行输出字符串,当然Ceylon的目标不只这些,它的目标是开发出新的Ceylon SDK来代替Java SDK

       

No.3

Go是一门从应用程序开发到系统编程都通用的程序设计语言。从某种程度上来说,它更像是C或者C++,但又像Java、C#一样有垃圾回收机制,运行时间映射及并行支持诸如此类的先进特点。同时,Go很容易编写,它像C却又没有C的冗长古板。

 

Go开发团队想开发出一种愉快的编程语言,身为动态脚本语言又兼具编译语言的特性。不过,Go目前还是在继续开发中,对于它的应用规则也随时可能改变。此外,Google已经开发出相应的工具和编译器。 

 

No.4

虽然函数式程序设计在计算机科学家及学术界里很流行,但是纯函数式语言却很难跟现实世界的软件开发相结合。微软开发的F#是包含函数式和实际应用的优秀语言,它和其他CLR(公共语言运行库)语言使用相同的函数库和特点。不过F#有自己的更有趣的语法特点,如丰富的数据类型会做科学的分类,还提供了一些设计有助于异步I/O、CPU并行化、卸载GPU的处理等。

 

现在微软已经在基于Apache开源许可证下开发了F#编译器及核函数库,大家可以免费使用,甚至可运行在MACLinux系统上。

 

No.5Opa

Opa提出了一项崭新的Web编程规范,而这或将一举消灭其他大部分的编程语言。在Opa应用程序中,客户端的UI、服务器端的逻辑,以及数据库中的I/O都可以用简单的编程语言Opa执行。它将客户端和服务端的结构框架绑定在一起。当然,这还需要后台特殊技术的支持。Opa的运行环境是绑定了它的Web服务器和数据库管理系统,其中任一部分都不能随意取代。现在,Opa64位的LinuxMac OSX平台是开源,以后会有更多的接口来使用。

 

No.6

Fantom是专门为跨平台的移植而设计的。Fantom不仅包含了可以在JVM或者.NET CLI中运行的编译器,也包括了一系列从Java.NET API中抽象出来的API,从而创建了一个额外的可移植层。现在有更多的计划要把Fantom 这种移植性蔓延开。不过可移植性并不是Fantom存在的唯一原因。它在继承一些像C这样的特性时,也提高了支持其它语言的质量。

 

FantomAcademic 3.0下开源,支持在Windows和Unix平台上使用。

 

No.7

作为Bram Moolenaar的产物,Zimbu吸收了以前各种语言的特点,目标是成为一种快速、简洁、轻便、易读、可适用于从GUI应用程序到OS内核的语言。由于Zimbu具备多种特性,而语法本身是独一无二的。它不仅有着像C一样的表达式和运算符,也有自己的关键字、数据类型和分程序结构。此外,还支持内存管理、线程。良好的可移植性也是Zimbu的一个重要的特性。虽然Zimbu是编译语言,但是它输出的是ANSI C代码。

 

不幸的,Zimbu现还处于初期阶段。但是如果你有兴趣体验的话,一些基本的工具在Apache 许可下已经可以使用了。

 

 No.8

并行处理已经成为了软件开发的趋势。因此,IBM研究院开发了X10来顺应这种趋势,希望提高开发者10倍的效率。X10使用全局地址空间分区(PGAS)的编程模式来进行并行管理。代码和数据以单位的形式被分开存储,这有利于在处理器上高性能的将单线程转为多线程。将来X10还会实现跟Java的交互使用。

 

现在X10还在改善当中,但是已经相当成熟了,在Linux、Mac OS X Windows等多种平台上都可以使用。

 

No.9

haXe不仅是一门便捷的语言,更是在不同的操作环境间使用的跨平台语言,从Native binaries到解释器再到虚拟机。开发者可以在haXe里编写代码,然后将它们编译成目标代码。haXe标准库是这门核心语言的坚实后盾,它能在每个目标上分别运行,然后再使用特殊目标库,从而来体现每个平台的不同之处。haXe有一系列优点,而它最主要的优势莫过于将目标平台上所固有的问题给否定掉。虽然haXe现在还仍处于开发阶段,但它的开发者已经将其用到商业上和游戏工作室Motion Twin。在开源许可证下,它可适用于Linux,Mac OS XWindows

 

No.10

Chapel作为Cray的第一门独创性的编程语言,是为超级计算和集群而设计的。Chapel的语法吸收多方的精华,除了通常的语言(C,C++,JAVA),它还从科学程序设计语言中借鉴概念,它的并行处理的特点则是受ZPL及高性能的程式语言的影响。Chapel一个最吸引人的特点是支持“多重解析编程”。

 

Chapel的开发还在继续。现在,它可以在Cray的超级计算机和多数高性能的集群上使用,但它对大部分类似Unix系统来说也是相当便捷的。源代码在BSD开源许可下可使用。

 

那么,这些新语言中您关注过或用过的有多少呢?

 

文章出自:infoworld

阅读(2363) | 评论(0) | 转发(0) |
0

上一篇:从PyOpenCV到CV2

下一篇:没有了

给主人留下些什么吧!~~