当前位置:  软件>java软件

基于 JVM 的编程语言 Coteline

    来源:    发布时间:2014-12-15

    本文导语:  Coteline 是一个全新的基于 JVM 的编程语言。Coteline 是 Ceylon 的超集,并保持对 Ceylon 的向后兼容。 比 Ceylon 改进的地方包括: "public as a service", because shared is not a good keyword. implements, because it is fancier than satisfies and it          clo...

Coteline 是一个全新的基于 JVM 的编程语言。Coteline 是 Ceylon 的超集,并保持对 Ceylon 的向后兼容。

比 Ceylon 改进的地方包括:

  • "public as a service", because shared is not a good keyword.

  • implements, because it is fancier than satisfies and it          closes the gap for existing J2EE 1.3 developers.

  • Call an object a singleton.

  • Use const in lieu of value.

  • Write def as a Hipster-compliant variant of function.

  • Ink Unit instead of void in your fine-crafted Coteline           definitions.

  • contract and trait carry more meaning than          interface (and who cares about the actual formal semantics of these?).

  • We think pray is a better replacement for assert, because          this is what you actually do when you write assertions.

  • dynamic blocks are better named as unsafe blocks, because they          escape the wonderland of static type checks.

  • Parametric types with in / out for contravariance and covariance are hard          to manipulate. This is also way too reminiscent of the C# world. Coteline          provides salvation with covar and contravar.

  • Last but not least, you can also write foreach loops in Coteline.

示例代码:

"The classic Hello World program"
public Unit hello(String name = "World") {
    const str = "Hello, `` name ``!";
    def work() => print(str);
    work();
    pray(1 == 1);
    plop.plop();
    foreach (i in {1, 2, 3}) {
        print(i);
    }
}

singleton plop {
    public Unit plop() {
        print("Oh Plop!");
    }
}

"Run the module `better.ceylon.is.coteline`."
public Unit run(){
    if (nonempty args=process.arguments) {
        foreach (arg in args) {
            hello(arg);
        }
    }
    else {
        hello();
    }
}

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问:有没有好的介绍JVM的书啊?(除了SUN JVM specification)
  • 怎样看到java程序经过编译后的代码内容(bytecode的)或者在bytecode在JVM执行时JVM所解析的代码
  • 安装IDEA 时出现“can not load jvm.dll,请重装jvm或更换”,我不懂了
  • jvm内存溢出解决方法(jvm内存溢出怎么解决)
  • 请教:jvm物理表现形式是不是jre?
  • 淘宝定制JVM TaobaoJVM
  • jdk和jvm
  • jdk? jre? jvm?
  • JVM 的 PHP 编译器 JPHP
  • Java 虚拟机 Zing Jvm
  • 浅析打开eclipse出现Incompatible JVM的解决方法
  • IE中JVM的问题
  • 关于JVM线程和进程的问题
  • root 在终端不能进入 jvm,但在界面可以进入,什么原因。
  • 基于JVM栈的语言 Frostbyte
  • Windows Mobile上的Java虚拟机 Mysaifu JVM
  • JVM Monitor
  • JVM语言 Xtend
  • Java Application能不能在安装了JVM但没有装SDK的系统中运行?
  • 解析Linux系统中JVM内存2GB上限的详解


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3