整个制作过程持续了整整十个月,这是锡兰迄今为止最大的发行量! 锡兰1.1.0合并了许多增强功能和错误修正,已解决了1400多个问题 。
Ceylon是一种用于Java和JavaScript虚拟机的现代,模块化,静态类型的编程语言。 该语言具有灵活且可读性强的语法,独特且罕见的优雅静态类型系统,强大的模块体系结构以及出色的工具,其中包括出色的基于Eclipse的IDE。 Ceylon支持跨平台模块的开发,该跨平台模块可在两个虚拟机环境中移植执行。 替代地,Ceylon模块可以针对一个或另一个平台,在这种情况下,它可以与为该平台编写的本机代码互操作。 对于最终用户,Ceylon 1.1中最重要的改进是:
- 性能增强 ,尤其是在IDE中的编译时间方面,
- 与Java重载和Java泛型之间更流畅的互操作 ,
- 对在OSGi容器上部署Ceylon模块的开箱即用支持,
- 对Ceylon SDK的增强,包括新的平台模块
ceylon.promise
,ceylon.locale
和ceylon.logging
,以及对ceylon.language
,ceylon.collection
和ceylon.test
许多改进, - Ceylon IDE中的许多新功能和改进,包括
-
ceylon.formatter
,用Ceylon编写的高质量代码格式化程序 , - 支持命令行工具插件,包括新的
ceylon format
和ceylon build
插件,以及 - 与vert.x集成 。
在此处可以找到更长的更改列表。
在盒子里
此版本包括:
- 完整的语言规范 ,以专业开发人员可以访问的语言定义了Ceylon的语法和语义,
- 命令行工具集,包括用于Java和JavaScript的编译器,文档编译器以及对在JVM和Node.js上执行模块化程序的支持,
- 用于代码组织,依赖关系管理和运行时模块隔离的强大模块架构,
- 语言模块 ,我们最小的Ceylon SDK跨平台基础以及
- 基于Eclipse 的功能齐全的集成开发环境。
语言
Ceylon是一种具有静态类型的易于理解的面向对象语言。 语言功能:
- 强调可读性,并且强烈倾向于忽略或消除可能有害或可能模棱两可的构造,以及高度规范地使用静态类型 ,
- 结合了子类型和参数多态性的极其强大且罕见的优雅类型系统,具有:
- 一等联合和相交类型
- 对函数和元组类型的独特处理,可实现强大的抽象,以及最优雅的方法来处理任何现代语言中的
null
, - 用于定义模块和模块之间依赖关系的一流构造,
- 一种非常灵活的语法,包括理解和支持表达树状结构 ,以及
- 在JVM和JavaScript虚拟机上均经过完全修饰的泛型类型 ,以及唯一的类型安全的元模型 。
有关这些语言功能的更多信息,请参见功能列表和快速介绍 。
此版本引入了以下新的语言功能:
- 支持使用地点差异 ,实现与Java泛型的完全互操作,
-
dynamic
接口 ,提供了一种类型安全的方式来与动态类型的本机JavaScript代码进行互操作, - 对出现在参数列表中的匿名函数的参数进行类型推断 ,以及
- 由编译器优化的
Byte
类 。
语言模块
语言模块是此发行版中的主要关注点,它在性能上进行了重大改进,API优化和新增了功能,其中包括添加了许多用于处理流的强大操作。
语言模块现在包括一个API,用于从Java中以编程方式部署Ceylon模块。
现在,语言模块被认为是稳定的,并且没有考虑对其API进行进一步的重大更改。
命令行工具
ceylon
命令现在支持插件体系结构。 例如,键入:
ceylon plugin install ceylon.formatter/1.1.0
安装ceylon format
子命令。
集成开发环境
此版本的IDE具有显着改善的构建性能,并引入了许多新功能,包括:
- 一个代码格式化程序 ,
- 七个新的重构以及对现有重构的许多改进,
- 许多新的快速修复/帮助 ,
- IntelliJ样式的“链完成”和应用于值的顶级功能的完成,
- 重新编写的资源管理器视图 ,更好地展示了模块和模块依赖性,
- 所有键盘加速器与JDT等效项的同步,
- 快速查找参考,最近编辑的文件,格式块,可视化模块依赖项,在类型层次结构视图中打开,转到精炼声明等。
开发包
为1.1.0重新编译的平台模块可在共享社区存储库Ceylon Herd中获得 。
此版本引入了以下新平台模块:
-
ceylon.promise
,对诺言的跨平台支持, -
ceylon.locale
,一个用于国际化的跨平台库,以及 -
ceylon.logging
,一个简单的日志记录API 。
此外,还有很多改进ceylon.collection
,它现在被认为是稳定的,并ceylon.test
。
可从社区模块存储库Ceylon Herd获得Ceylon SDK。
Vert.x整合
mod-lang-ceylon
实现了对Vert.x 2.1.x的Ceylon 1.1支持,可以在此处下载。
社区
锡兰社区网站http://ceylon-lang.org包含文档和有关参与的信息。
源代码
可以从GitHub免费获得Ceylon的源代码,其规范及其网站。
问题
Bug和建议可能会在GitHub的问题跟踪器中报告 。
致谢
我们非常感谢社区志愿者,他们在业余时间里贡献了当前锡兰代码库的很大一部分。 以下人员对此发行版做出了贡献:
加文·金(Gavin King),史蒂芬妮·埃帕多(StéphaneÉpardaud),塔可·斯科塔努斯(Tako Schotanus),伊曼纽尔·伯纳德(Emmanuel Bernard),汤姆·本特利,阿列斯·贾斯汀,大卫·费斯特尔,马克斯·赖德尔·安德森,姆拉登·特克,詹姆斯·科布,汤玛斯·赫拉德茨,罗斯·泰特,伊沃·卡西克,恩里克·扎穆迪奥,罗兰·特普,迭戈·科罗内尔,丹尼尔罗切蒂(Rochetti),洛伊克·鲁雄(Loic Rouchon),马特·拉扎(Matej Lazar),卢卡斯·韦尔迈斯特(Lucas Werkmeister),阿克伯·乔杜里(Abber Choudhry),科宾·乌瑟尔顿(Corbin Uselton),朱利安·维耶(Julien Viet),斯蒂芬·加勒斯(PacoSoberón),雷纳托·阿特海德斯(Renato Athaydes),迈克尔·穆斯格罗夫(Michael Musgrove),弗拉维奥·奥里弗里(Michael Brackx),布伦特·道格拉斯(Brent Douglas),卢卡斯·埃德(Mark Bradx) Pete Muir,Henning Burdack,Nicolas Leroux,Brett Cannon,Geoffrey De Smet,Guillaume Lours,Gunnar Morling,Jeff Parsons,Jesse Sightler,Oleg Kulikov,Raimund Klein,SergejKoščejev,Chris Marshall,Simon Thum,Maia Kozheva,Shelby As, ,Fabien Meurisse,Sjur Bakka,Xavier Coulon,Ari Kast,Dan Allen,DenizTürkoglu,F.Meurisse,Jean-Charles Roger,Johannes Lehmann,Alexander Altman,allentc,Nikolay Tsankov,Chris Horne,gabriel-mirea,Georg Ragaller,Griffin德约翰,哈拉德·韦尔曼,克林 ger,卢克,奥利弗·冈萨(OliverGondža)和斯蒂芬·克劳利(Stephen Crawley)。
翻译自: https://www.javacodegeeks.com/2014/10/ceylon-1-1-0-is-now-available.html