写点什么

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:042021
用户头像

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

关注

评论

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

巅峰对谈:迈向 AGI 时代,除了优秀的大模型,还需要什么?丨Fabarta&蓝驰创投

Fabarta

人工智能 图数据库 AI大模型 AGI 图智能

可视化探索开源项目的 contributor 关系

NebulaGraph

开源

借生态力量助力人工智能发展 英特尔这些年做了哪些事?

E科讯

DB-GPT: Github 两周2.6k star 数据库领域的GPT来了~

csunny

GPT autogpt LLMs

基于AIGC的京东购物助手的技术方案设想 | 京东云技术团队

京东科技开发者

人工智能 智能客服 AIGC 企业号 5 月 PK 榜

被性能优化撂倒无数次后的顿悟!465页调优笔记助力大厂面试之旅

Java 性能优化 性能调优

网络性能问题排查思路

蓝胖子的编程梦

TCP 网络 问题排查 问题定位 问题解析

架构训练营模块二作业

Geek_3d7c4d

C端用户体验度量实战篇-京东快递小程序体验度量全面升级 | 京东云技术团队

京东科技开发者

用户体验 用户体验设计 企业号 5 月 PK 榜 京东小程序

起猛了!从Github大佬白嫖的分布式进阶宝典,啃完感觉能吊锤面试官

Java 架构 分布式

SpringCloud 中 Zuul 网关原理及其配置

Java Spring Cloud 网关 Zuul

淬体归元,运营商资源域元数据管理

鲸品堂

大数据 管理 元数据 企业号 5 月 PK 榜

JWT真的安全吗?如何解决该问题

JWT

图解Redis和Zookeeper分布式锁 | 京东云技术团队

京东科技开发者

redis zookeeper 分布式锁 zookeeper分布式锁 企业号 5 月 PK 榜

Java高并发难题一网打尽,全网最全的高并发设计文档

Java 架构 系统设计 高并发

ShareSDK Android端合规指南

MobTech袤博科技

NGINX Service Mesh 中的 mTLS 架构

NGINX开源社区

nginx Service Mesh

景区共享电动车投放:助力打造智慧景区

共享电单车厂家

共享电单车投放 校园共享电单车 景区共享电动车 共享电动车合作 共享电单车厂家

MoE 系列(五)|Envoy Go 扩展之内存安全

SOFAStack

golang 开发者 后端 网关 C++

火山引擎DataLeap:如何构建一套完整、易用的数据标准体系

字节跳动数据平台

大数据 数据治理 数据标准 数据研发

强!PCB“金手指”从设计到生产全流程

华秋PCB

工具 PCB 连接器 PCB设计 金手指

解读与用户一起“跳动”的开源实时监控工具 HertzBeat

华为云开发者联盟

后端 开发 华为云 华为云开发者联盟 企业号 5 月 PK 榜

代码级质量技术之基本框架介绍

百度Geek说

单元测试 开发语言 C++ 企业号 5 月 PK 榜

优秀的屏幕取色软件:ColorSnapper2激活版

真大的脸盆

Mac Mac 软件 屏幕取色器

【堡垒机】云堡垒机可以安装在外部数据库上吗?

行云管家

数据库 IT运维 云堡垒机 运维安全

直播预告 | 博睿学院:算法平台底座-数据湖应用

博睿数据

数据湖 可观测性 智能运维 博睿数据 博睿学院

OIDC & OAuth2.0 协议及其授权模式详解|认证协议最佳实践系列【1】

Authing

身份认证 OAuth 2.0 单点登录 OIDC

PAG动效框架源码笔记 (四)渲染框架

olinone

ios android 动画 移动 特效

复盘的价值是什么?

老张

复盘 复盘归因

2022 Kube-OVN开源社区年度报告

York

开源 云原生 k8s 容器网络 cni

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