Coteline 基于 JVM 的编程语言

我要开发同款
匿名用户2014年04月02日
48阅读
开发技术Java
所属分类程序开发、脚本编程语言
授权协议未知

作品详情

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

比Ceylon改进的地方包括:

"publicasaservice",becausesharedisnotagoodkeyword.

implements,becauseitisfancierthansatisfiesandit     closesthegapforexistingJ2EE1.3developers.

Callanobjectasingleton.

Useconstinlieuofvalue.

WritedefasaHipster-compliantvariantoffunction.

InkUnitinsteadofvoidinyourfine-craftedCoteline     definitions.

contractandtraitcarrymoremeaningthan     interface(andwhocaresabouttheactualformalsemanticsofthese?).

Wethinkprayisabetterreplacementforassert,because     thisiswhatyouactuallydowhenyouwriteassertions.

dynamicblocksarebetternamedasunsafeblocks,becausethey     escapethewonderlandofstatictypechecks.

Parametrictypeswithin/outforcontravarianceandcovariancearehard     tomanipulate.ThisisalsowaytooreminiscentoftheC#world.Coteline     providessalvationwithcovarandcontravar.

Lastbutnotleast,youcanalsowriteforeachloopsinCoteline.

示例代码:

"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();    }}
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论