写点什么

Ceylon 和 Ceylon IDE 都发布第一个里程碑了

  • 2012-01-18
  • 本文字数:1022 字

    阅读完需:约 3 分钟

Ceylon IDE 在上周二发布了第一个里程碑,为去年十二月底发布了 M1 的 Ceylon 语言提供了 IDE。

Ceylon 是一种基于 JVM 的新语言,主要由 Red Hat 赞助、Gavin King 牵头,Gavin King 是著名 Java 持久层框架 Hibernate 的创始人。Ceylon 在去年四月召开的 QCon Beijing 上发布,要想进一步了解当时公布的 Ceylon 语言特性细节,请观看 InfoQ 对 Gavin 的采访

Ceylon M1 附带发布了编译器,Ceylon 语言现在有官方规范。Ceylon 代码可以编译成字节码、在JVM 上执行。Ceylon 的路线图全面概述了Ceylon 第一个版本要支持的内容,其中M2 的目标是支持Java 互操作性。

和许多其他基于JVM 的语言不同,Ceylon 的目标是在缺省情况下保持不变性。如果需要进行变量赋值,那就需要用variable 关键字来表明值可能会变;另外,为变量赋值要使用:=,以便和值赋值使用的= 区别开来。这样做的目的是更加清晰地突出可变变量和不变变量之间的区别。关键字都是词语,而不是符号,以免混淆语言的这些新内容。不过Ceylon 用satisfies 替代了implements。

和Scala 一样,Ceylon 提供了一种Option 类型(也叫做Maybe 类型),允许可以为空的类型值。这种类型可以用简写T? 表示;T 类型则表示包含的值不会为空。(这有助于用类型检查器去保证值不为空;Java 里空引用的问题已经用@NotNullable 和@Nullable 注解去解决了。对于Null 的引入,Tony Hoare 曾把它描述为价值十亿美元的错误)。

如今,任何新语言都有相应的IDE 去完成开发。就像最近发布的 Scala IDE ,Ceylon 现在也有了 Eclipse 插件形式的 Ceylon IDE 。它有一个内置的编译器,尽管用 Eclipse 编译的代码也能在独立的 Ceylon 编译器 / 运行时环境里运行(反之亦然)。

完整的功能列表可以去 IDE 的文档页面查看,里面有一个贴了很多截图的独立页面。IDE 既可以运行Ceylon 代码,也可以调试,而不用安装其他工具链。IDE 支持很多标准特性(比如TODO 和大纲视图),也支持Ceylon 特有的功能(比如Ceylon 特定的重构和快速修复)。

由于Ceylon IDE 是基于Eclipse 的插件,所以现有的开发者工具链都能使用EGit 和Subclipse/Subversive 等已有工具的Hook。尽管可以用Ceylon 工具集编译代码,但Ant、Maven 等现有构建系统的插件目前还不可用。

最后, GitHub 里 Ceylon 项目的代码已经可用了,你也可以从下载页面直接下载。

Ceylon 和 Ceylon IDE 现在都发布了,你怎么看待这种语言和它的工具呢?

查看英文原文: First Milestone of Ceylon and Ceylon IDE

2012-01-18 09:041973
用户头像

发布了 151 篇内容, 共 68.9 次阅读, 收获喜欢 18 次。

关注

评论

发布
暂无评论
发现更多内容

某美团程序员爆料:筛选简历时,用go语言的基本不看!网友:当韭菜还当出优越感了!

Java架构师迁哥

JVM入门,认识Class文件

Simon郎

JVM Java 分布式

《Python程序员面试算法宝典》PDF 超清版免费领取

计算机与AI

Python 面试 算法

SQL数据库:GROUPING运算符

正向成长

GROUPING运算符

力扣(Leetcode)练习--给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序

Wynne

公众号高频被调整,它不是企业生产文章的机器

Linkflow

客户数据平台 CDP 私域流量

京东开发4年,想要跳槽去拼多多,落泪四4面,这年头跳槽可真难啊(还好不是裸辞)

Java~~~

架构 面试 编程语言 java架构师

粉丝求助:JAVA程序员,4年了,很迷茫,希望前辈可以给指出一个技术路线和需掌握的知识技能树;

Java架构师迁哥

甲方日常 54

句子

工作 随笔杂谈 日常

《迅雷链精品课》第五课:账户与账本

迅雷链

区块链

涛涌天际,水利万物:黄浦江畔读懂城市智能体

脑极体

深入浅出 Go - sync.Map 源码分析

helbing

Go 语言

Istio 1.8 发布——用户至上的选择

Jimmy Song

开源 云原生 Service Mesh istio

【云图说】第189期 初识数据仓库服务

华为云开发者联盟

数据库 数据仓库 数据

架构师Week5总结

lggl

总结

LAXCUS大数据集群操作系统挖矿

陈泽云

大数据 分布式计算 挖矿

苹果首发ARM架构电脑芯片,将对PC格局带来哪些影响?

脑极体

面试题总结--HashMap、Volatile相关

彭阿三

如何在 vuePress中添加博客导流公众号-即输入验证码解锁全站文章

itclanCoder

vuepress 解锁文章 博客引流 建站

一致性hash算法

天涯若海

深入理解h2和r2dbc-h2

程序那些事

响应式编程 R2DBC 程序那些事 响应式架构 r2dbc-h2

KubeVela 正式开源:一个高可扩展的云原生应用平台与核心引擎

阿里巴巴云原生

阿里云 开源 Kubernetes 云原生 OAM

阿里作为内部参考的Redis文档现在开放下载,姐夫半夜不睡都在看

小Q

Java redis 学习 编程 面试

架构师训练营第九周作业

我是谁

极客大学架构师训练营

亚马逊全球百万钜惠引爆“黑五” 跨境狂欢“巅峰6日”震撼登场

爱极客侠

深入浅出 Go - sync.Once 源码分析

helbing

Go 语言

UNISKIN COO Kevin|营销数字化:数据沉淀和数据系统化运营一定要趁早!

Linkflow

营销数字化 客户数据平台 CDP

强化学习入门必看之强化学习导识

Alocasia

人工智能 学习

架构师Week5作业

lggl

作业

OpenFeign和Consul爱恨交织的两天

编号94530

Spring Cloud Consul OpenFegin spring 5

MySQL主从数据库没有同步怎么办?

冰河

MySQL 数据库 分布式 微服务

Ceylon和Ceylon IDE都发布第一个里程碑了_Java_Alex Blewitt_InfoQ精选文章