锡兰1.3.0现已上市
Ceylon 1.3.0是Ceylon语言的主要版本,已结束330多个问题 。 这是Ceylon的第一个版本,支持Android开发,Node Package Manager( npm )和Wildfly Swarm 。
- 对于JVM,此发行版与Ceylon 1.2的所有发行版(1.2.0至1.2.2)向后兼容。
- 对于JavaScript,此版本仅与先前版本(1.2.2)向后兼容。
Ceylon IDE 1.3.0现在可用于两个领先的Java开发环境:
- 作为IntelliJ IDEA和Android Studio的插件 ,这是第一次
- Eclipse平台的现有支持 。
用于IntelliJ的Ceylon IDE是专为具有许多Java依赖项的大型项目而设计的,目前是用于Ceylon的性能最佳的IDE。
变化
语言和命令行分发的增强功能包括:
- 支持开发Android应用程序
- 支持从npm导入模块以及将锡兰模块发布到npm
- 支持使用WildFly Swarm开发微服务
- 跨平台服务 ,抽象Java服务加载器
- 增加了用于将Ceylon程序及其依赖项打包到单个程序集中的
fat-jar
工具 - 更苗条的运行时
- 解构匿名函数的参数
-
switch
case
的破坏 - 添加了
CorrespondenceMutator
接口 -
Collection.combinations()
-
small
和since
注解 - 与Java互操作的许多小改进
- 对Java APT处理器的实验性支持
- 改进的行为
is
与通用的Java类型测试 - 正确键入 Java中带注释的
@Nullable
/@NotNull
的内容 - 全面支持Java 8
- 减少Typechecker的内存占用
自然,该版本合并了更多的错误修正,较小的增强和性能改进。
支持Docker
现在可以使用Ceylon的Docker映像 ,这使得在Docker容器中运行Ceylon程序非常容易。
IDE变更
Ceylon IDE for IntelliJ是用于IntelliJ IDEA和Android Studio的全新开发工具,具有增量错误报告,代码完成,基本重构,许多意图操作,复杂的导航,搜索,类型层次结构和文件结构,在线文档以及与之完全集成的功能。 锡兰牧群等等。
用于IntelliJ的Ceylon IDE主要是用Ceylon编写的,并重用了Ceylon IDE Common的项目,该项目是Ceylon IDE for Eclipse的核心,该项目已完全用Ceylon重写。
近60的问题被固定在锡兰IDE为Eclipse和代码完成了重新设计,围绕一个无阻塞的做法,是在大型项目更为敏感。 另外,对类型检查器的改进导致内存使用量大大降低。
SDK变更
修复了影响Ceylon SDK的40个问题 。
从锡兰1.2.2迁移
Ceylon 1.3.0与Ceylon 1.2.2向后兼容,因此无需重新编译或更改依赖项。 但是,建议升级到任何Ceylon平台模块的1.3.0版。
关于锡兰
Ceylon是一种用于Java和JavaScript虚拟机的现代,模块化,静态类型的编程语言。 该语言具有灵活且易读的语法,独特且罕见的优雅静态类型系统,强大的模块体系结构以及出色的工具,其中包括同时支持IntelliJ IDEA和Eclipse平台的出色IDE。
Ceylon支持跨平台模块的开发,该跨平台模块可在两个虚拟机环境中移植执行。 替代地,Ceylon模块可以针对一个或另一个平台,在这种情况下,它可以与为该平台编写的本机代码互操作。
在盒子里
此版本包括:
- 完整的语言规范 ,以专业开发人员可以访问的语言定义了Ceylon的语法和语义,
- 命令行工具集,包括Java和JavaScript的编译器,文档编译器,测试运行器,WAR归档打包器,“胖” JAR打包器,并支持在JVM和Node.js上执行模块化程序,
- 用于代码组织,依赖关系管理和运行时模块隔离的强大模块架构,还支持与OSGi,Jigsaw,Maven和npm的互操作,以及
- 语言模块 ,这是我们最小的跨平台基础级别的API。
单独提供:
- 包含Ceylon SDK的平台模块的更新版本,
- 一个代码格式化程序,作为
ceylon
命令的插件, -
ceylon
命令的插件,支持Dart VM的编译和执行 ,以及 - 两个功能齐全的集成开发环境:用于Eclipse和IntelliJ IDEA。
语言
Ceylon是一种具有静态类型的易于理解的面向对象语言。 语言功能:
- 强调可读性,并且强烈倾向于忽略或消除可能有害或可能模棱两可的构造,以及高度规范地使用静态类型 ,
- 结合了子类型和参数多态性的极其强大且罕见的优雅类型系统,具有:
-
一等联合和相交类型
- 对函数和元组类型的独特处理,可实现强大的抽象,以及最优雅的方法来处理任何现代语言中的
null
, - 用于定义模块和模块之间依赖关系的一流构造,
- 一种非常灵活的语法,其中包括对树状结构的 理解和支持,
- 在JVM和JavaScript虚拟机上均经过完全修饰的泛型类型 ,以及唯一的类型安全的元模型 。
社区
锡兰社区网站https://ceylon-lang.org包含文档和有关参与的信息。
源代码
的GitHub
有关Ceylon的开源许可证的信息,请参见此处 。
问题
Bug和建议可能会在GitHub的问题跟踪器中报告 。
翻译自: https://www.javacodegeeks.com/2016/09/ceylon-1-3-0-now-available.html