锡兰1.3.1现已上市
Ceylon 1.3.1是Ceylon语言的重要次要版本,已解决140多个问题 。 这是Ceylon的第一个发行版,支持与Java 8 lambda和流 , RxJava和Spring Boot的互操作。 此版本还引入了对static
成员的支持。
此版本的Ceylon已通过各种Java库和框架进行了测试,包括:
- Spring靴子
- WildFly和WildFly Swarm ,
- 休眠 (JPA),
- RESTEasy (JAXB和JAX-RS),
- 焊接 (CDI)和吉斯 ( Guice )
- Eclipse Equinox,Apache Karaf和Apache Felix(OSGi),
- 火花
- RxJava的
- JOGL (OpenGL),以及
- Android 。
示例代码展示了如何使用这些框架的是可用的 。
与以前的Ceylon发行版相比,基于反射的Java框架的使用现在更加透明,并且与基于Maven的多模块平台和框架的集成现在更易于配置。
锡兰之旅已被广泛更新,尤其是处理与本机Java和JavaScript以及与模块系统的互操作的部分。
变化
语言和命令行分发的增强功能包括:
- 锡兰类中的
static
成员 - 与Java 8 lambda互操作-能够将Ceylon函数传递给Java SAM类型
- 当地
import
声明 - 支持点差运算符
*
和*.
与java.lang.Iterable
和Java数组 -
switch
case
的文字元组 -
small Character
- 新的Maven互操作模式
--fully-export-maven-dependencies
于像Spring Boot这样的多模块平台的项目的--fully-export-maven-dependencies
- 支持仅POM的Maven工件
- 新的Java EE友好编译器模式 ,使依赖于对字段的反射式直接访问的Java框架易于使用
- 将Ceylon元模型传递给接受
java.lang.Class
Java方法的能力 - 可以将Ceylon字符串传递给接受
java.lang.CharSequence
Java方法 - 改进对源自对本机Java的调用的
null
值的处理 - 有关与重载Java方法互操作有关的几个错误修正
- 新的命令行选项:
--java
,--incremental
和--include-dependencies
自然,该版本合并了许多错误修正和较小的增强功能。
IDE变更
适用于IntelliJ和Eclipse的 Ceylon IDE 1.3.1解决了110多个问题 ,并增加了在WildFly Swarm上运行和调试Ceylon程序的支持。
SDK变更
修复了影响Ceylon SDK的15个问题 ,并引入了新的平台模块ceylon.interop.spring
和ceylon.interop.persistence
。 Herd中提供了平台模块的新1.3.1版本。
移民
对于JVM,此版本与1.2.0以来的所有先前版本的Ceylon向后兼容。
对于JavaScript,此版本仅与前两个版本(1.2.2和1.3.0)向后兼容。
Ceylon 1.3.1与Ceylon 1.3.0向后兼容,因此无需重新编译或更改依赖项。 但是,建议升级到任何Ceylon平台模块的1.3.1版。
关于锡兰
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
命令的插件,支持Dart VM的编译和执行 , - WildFly Swarm的插件打包 程序 ,
- 插件代码格式化程序 ,
- 两个功能齐全的集成开发环境:用于Eclipse和IntelliJ IDEA,以及
- Visual Studio Code的插件。
语言
Ceylon是一种具有静态类型的易于理解的面向对象语言。 语言功能:
- 强调可读性,并且强烈倾向于忽略或消除可能有害或可能模棱两可的构造,以及高度规范地使用静态类型 ,
- 结合了子类型和参数多态性的极其强大且罕见的优雅类型系统,具有:
-
一等联合和相交类型
- 对函数和元组类型的独特处理,可实现强大的抽象,以及最优雅的方法来处理任何现代语言中的
null
, - 用于定义模块和模块之间依赖关系的一流构造,
- 一种非常灵活的语法,其中包括对树状结构的 理解和支持,
- 在JVM和JavaScript虚拟机上均经过完全修饰的泛型类型 ,以及唯一的类型安全的元模型 。
社区
锡兰社区网站https://ceylon-lang.org包含文档和有关参与的信息。
您可以在Twitter上关注@ceylonlang 。
源代码
可从GitHub免费获得Ceylon的源代码,其规范及其网站。
有关Ceylon的开源许可证的信息,请参见此处 。
问题
Bug和建议可能会在GitHub的问题跟踪器中报告 。
翻译自: https://www.javacodegeeks.com/2016/11/ceylon-1-3-1-now-available.html