Ceylon 1.0发布:又一个“Java语言替代品”?

Ceylon是Gavin King(Hibernate和Seam创始人)的作品,这是一个可运行于Java和JavaScript虚拟机的、高可读的、模块化的、面向对象的静态类型编程语言,其融合了Java、C、Smalltalk以及函数式语言的特性,试图解决Java语言中的一些问题。

Gavin King近日发布了Ceylon 1.0正式版本,这意味着其语言规范、编译器和IDE都到达了生产标准。



Ceylon的语言特性

Ceylon语言的主要特点如下:

  • 高度可读性,极力避免和消除潜在的有害架构
  • 一个强大的类型系统,结合了子类型、参数化多态性和声明位置变量,包括集和交集类型,并使用主要类型用于局部类型推断和依赖流(flow)的类型归类。
  • 独特的函数和元组类型,可以实现强大的抽象
  • 针对模块定义和模块间依赖定义的先进的架构
  • 一个非常灵活的语法,支持类似于树形的结构表达方式
  • 完全具体化的泛型类型,支持JVM和JavaScript虚拟机,还包括一个独特的类型安全的元模型。

详细语言特性:http://ceylon-lang.org/features

Ceylon语言包及工具

此次发布的1.0版本中包括:

  • 一个完整的语言规范,定义了Ceylon的语法和语义,便于开发者学习
  • 一个命令行工具集,包括针对Java和JavaScript的编译器、文档编译器、支持在JVM和Node.js上执行模块化程序
  • 一个功能强大的模块架构,可用于组织代码、管理依赖、在运行时隔离模块
  • 语言模块,这是Ceylon语言的重要组成部分,是Ceylon SDK跨平台的基础
  • 一个全功能的基于Eclipse的集成开发环境

发布日志:http://ceylon-lang.org/blog/2013/11/12/ceylon-1/

Ceylon的目标

像其他JVM语言一样,Ceylon也被誉为“Java的替代者”,对此,Gavin King表示:

引用
Ceylon不是Java,它是深受Java影响的一种新语言,它的设计者是Java的坚定支持者。Java不会很快消亡,没有哪种语言能够取代它。


Gavin King表示,开发Ceylon的初衷是为了扩展Java,而不是取代Java,Gavin认为Java中有许多问题,包括泛型等特性的复杂性、设计粗糙且晦涩难懂的JDK、粗劣的注解语法、不完善的块结构、对XML的依赖性等等,因此他希望开发一种新型语言来解决这些问题。

一些示例代码

Ceylon的Hello World代码:

Ceylon代码 复制代码
  1. void hello() {  
  2.   writeLine( "Hello World." );  
  3. }  
void hello() {
  writeLine( "Hello World." );
}



一个简单的函数:

Ceylon代码 复制代码
  1. function distance(Point from, Point to) {  
  2.     return ((from.x-to.x)^2 + (from.y-to.y)^2)^0.5;  
  3. }  
function distance(Point from, Point to) {
    return ((from.x-to.x)^2 + (from.y-to.y)^2)^0.5;
}



一个简单的类:

Ceylon代码 复制代码
  1. class Counter(Integer initialValue=0) {   
  2.     variable value count = initialValue;   
  3.     shared Integer currentValue {  
  4.         return count;  
  5.     }   
  6.     shared void increment() {  
  7.         count++;  
  8.     }   
  9. }  
class Counter(Integer initialValue=0) { 
    variable value count = initialValue; 
    shared Integer currentValue {
        return count;
    } 
    shared void increment() {
        count++;
    } 
}


官方网站:http://ceylon-lang.org/

Github地址:https://github.com/ceylon

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值