This repository has been archived by the owner on Apr 13, 2023. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Updated site for 1.2.2. BLOG IS NOT FINISHED YET!
- Loading branch information
Showing
5 changed files
with
300 additions
and
45 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,28 +1,28 @@ | ||
spec_current: /documentation/current/spec/html_single/index.html | ||
spec_relative: spec/html_single/index.html | ||
apidoc_current: https://modules.ceylon-lang.org/repo/1/ceylon/language/1.2.1/module-doc | ||
apidoc_current: https://modules.ceylon-lang.org/repo/1/ceylon/language/1.2.2/module-doc | ||
apidoc_1_0: https://modules.ceylon-lang.org/repo/1/ceylon/language/1.0.0/module-doc | ||
apidoc_1_1: https://modules.ceylon-lang.org/repo/1/ceylon/language/1.1.0/module-doc | ||
apidoc_1_2: https://modules.ceylon-lang.org/repo/1/ceylon/language/1.2.1/module-doc | ||
apidoc_1_2: https://modules.ceylon-lang.org/repo/1/ceylon/language/1.2.2/module-doc | ||
ceylon_tool_current: /documentation/current/reference/tool/ceylon/subcommands | ||
|
||
apidoc_current_language: https://modules.ceylon-lang.org/repo/1/ceylon/language/1.2.1/module-doc | ||
apidoc_current_collection: https://modules.ceylon-lang.org/repo/1/ceylon/collection/1.2.1/module-doc | ||
apidoc_current_dbc: https://modules.ceylon-lang.org/repo/1/ceylon/dbc/1.2.1/module-doc | ||
apidoc_current_file: https://modules.ceylon-lang.org/repo/1/ceylon/file/1.2.1/module-doc | ||
apidoc_current_html: https://modules.ceylon-lang.org/repo/1/ceylon/html/1.2.1/module-doc | ||
apidoc_current_interop_java: https://modules.ceylon-lang.org/repo/1/ceylon/interop/java/1.2.1/module-doc | ||
apidoc_current_interop_browser: https://modules.ceylon-lang.org/repo/1/ceylon/interop/browser/1.2.1/module-doc | ||
apidoc_current_io: https://modules.ceylon-lang.org/repo/1/ceylon/io/1.2.1/module-doc | ||
apidoc_current_json: https://modules.ceylon-lang.org/repo/1/ceylon/json/1.2.1/module-doc | ||
apidoc_current_locale: https://modules.ceylon-lang.org/repo/1/ceylon/locale/1.2.1/module-doc | ||
apidoc_current_logging: https://modules.ceylon-lang.org/repo/1/ceylon/logging/1.2.1/module-doc | ||
apidoc_current_math: https://modules.ceylon-lang.org/repo/1/ceylon/math/1.2.1/module-doc | ||
apidoc_current_net: https://modules.ceylon-lang.org/repo/1/ceylon/net/1.2.1/module-doc | ||
apidoc_current_process: https://modules.ceylon-lang.org/repo/1/ceylon/process/1.2.1/module-doc | ||
apidoc_current_promise: https://modules.ceylon-lang.org/repo/1/ceylon/promise/1.2.1/module-doc | ||
apidoc_current_regex: https://modules.ceylon-lang.org/repo/1/ceylon/regex/1.2.1/module-doc | ||
apidoc_current_test: https://modules.ceylon-lang.org/repo/1/ceylon/test/1.2.1/module-doc | ||
apidoc_current_time: https://modules.ceylon-lang.org/repo/1/ceylon/time/1.2.1/module-doc | ||
apidoc_current_transaction: https://modules.ceylon-lang.org/repo/1/ceylon/transaction/1.2.1/module-doc | ||
apidoc_current_unicode: https://modules.ceylon-lang.org/repo/1/ceylon/unicode/1.2.1/module-doc | ||
apidoc_current_language: https://modules.ceylon-lang.org/repo/1/ceylon/language/1.2.2/module-doc | ||
apidoc_current_collection: https://modules.ceylon-lang.org/repo/1/ceylon/collection/1.2.2/module-doc | ||
apidoc_current_dbc: https://modules.ceylon-lang.org/repo/1/ceylon/dbc/1.2.2/module-doc | ||
apidoc_current_file: https://modules.ceylon-lang.org/repo/1/ceylon/file/1.2.2/module-doc | ||
apidoc_current_html: https://modules.ceylon-lang.org/repo/1/ceylon/html/1.2.2/module-doc | ||
apidoc_current_interop_java: https://modules.ceylon-lang.org/repo/1/ceylon/interop/java/1.2.2/module-doc | ||
apidoc_current_interop_browser: https://modules.ceylon-lang.org/repo/1/ceylon/interop/browser/1.2.2/module-doc | ||
apidoc_current_io: https://modules.ceylon-lang.org/repo/1/ceylon/io/1.2.2/module-doc | ||
apidoc_current_json: https://modules.ceylon-lang.org/repo/1/ceylon/json/1.2.2/module-doc | ||
apidoc_current_locale: https://modules.ceylon-lang.org/repo/1/ceylon/locale/1.2.2/module-doc | ||
apidoc_current_logging: https://modules.ceylon-lang.org/repo/1/ceylon/logging/1.2.2/module-doc | ||
apidoc_current_math: https://modules.ceylon-lang.org/repo/1/ceylon/math/1.2.2/module-doc | ||
apidoc_current_net: https://modules.ceylon-lang.org/repo/1/ceylon/net/1.2.2/module-doc | ||
apidoc_current_process: https://modules.ceylon-lang.org/repo/1/ceylon/process/1.2.2/module-doc | ||
apidoc_current_promise: https://modules.ceylon-lang.org/repo/1/ceylon/promise/1.2.2/module-doc | ||
apidoc_current_regex: https://modules.ceylon-lang.org/repo/1/ceylon/regex/1.2.2/module-doc | ||
apidoc_current_test: https://modules.ceylon-lang.org/repo/1/ceylon/test/1.2.2/module-doc | ||
apidoc_current_time: https://modules.ceylon-lang.org/repo/1/ceylon/time/1.2.2/module-doc | ||
apidoc_current_transaction: https://modules.ceylon-lang.org/repo/1/ceylon/transaction/1.2.2/module-doc | ||
apidoc_current_unicode: https://modules.ceylon-lang.org/repo/1/ceylon/unicode/1.2.2/module-doc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,234 @@ | ||
--- | ||
title: Ceylon 1.2.2 is now available | ||
author: Tako Schotanus | ||
layout: blog | ||
unique_id: blogpage | ||
tab: blog | ||
tags: [release, news, progress, 1.2.2] | ||
--- | ||
|
||
[spec]: /documentation/1.2/spec | ||
[toolset]: /documentation/1.2/reference/tool/ceylon/subcommands/index.html | ||
[ceylon.language]: https://herd.ceylon-lang.org/modules/ceylon.language | ||
[sdk]: https://modules.ceylon-lang.org/categories/SDK | ||
[ide features]: /documentation/1.2/ide/features/ | ||
[Ceylon Herd]: https://herd.ceylon-lang.org | ||
[documentation]: /documentation/1.2 | ||
[license]: /code/licenses/ | ||
[community]: /community/ | ||
[download]: /download/ | ||
[git]: https://github.com/ceylon | ||
[issues]: /code/issues | ||
[Web IDE]: http://try.ceylon-lang.org | ||
[quick-intro]: /documentation/1.2/introduction/ | ||
|
||
Three months after the last major release, | ||
[Ceylon 1.2.2][download] is a new maintenance release, | ||
with almost [100 issues][] closed, including new features, | ||
improvements and bug fixes such as: | ||
|
||
- you can now iterate `java.lang.Iterable` values in `for` statements | ||
and use `java.lang.AutoCloseable` values in `try` statements, | ||
- support for [Java 9 and Jigsaw modules](/blog/2015/12/17/java9-jigsaw), | ||
- experimental support for [type functions][] on the JVM, | ||
- reduced run-time dependencies for your Ceylon program, | ||
- better interoperation with JavaScript arrays, | ||
- better compatibility with previous and future Ceylon releases. | ||
|
||
Note that for the JVM backend, this release is backwards-compatible | ||
with the previous major release (`1.2.0`), which means you can use | ||
modules compiled with `1.2.0` on a `1.2.1` distribution out of the box. | ||
This is not as easy the other way around, if you want to run modules | ||
compiled for `1.2.1` on a `1.2.0` distribution, which is why we | ||
recommend you upgrade to `1.2.1`. | ||
|
||
Sadly, on the JavaScript backend, we had to break binary compatibility | ||
to fix serious interoperation issues, and so modules compiled for `1.2.1` | ||
and `1.2.0` are not compatible. We recommend you upgrade your distribution | ||
to `1.2.1` and recompile your modules. | ||
|
||
[type functions]: /blog/2015/06/03/generic-function-refs/ | ||
[100 issues]: https://github.com/ceylon/ceylon/issues?q=is%3Aissue+milestone%3A1.2.1+is%3Aclosed | ||
|
||
## About Ceylon | ||
|
||
Ceylon is a modern, modular, statically typed programming | ||
language for the Java and JavaScript virtual machines. The | ||
language features a flexible and very readable syntax, a | ||
unique and uncommonly elegant static type system, a powerful | ||
module architecture, and excellent tooling, including an | ||
awesome Eclipse-based IDE. | ||
|
||
Ceylon enables the development of cross-platform modules | ||
that execute portably in both virtual machine environments. | ||
Alternatively, a Ceylon module may target one or the other | ||
platform, in which case it may interoperate with native code | ||
written for that platform. | ||
|
||
## In the box | ||
|
||
[This release][download] includes: | ||
|
||
- a complete [language specification][spec] that defines the | ||
syntax and semantics of Ceylon in language accessible to | ||
the professional developer, | ||
- a [command line toolset][toolset] including compilers for | ||
Java and JavaScript, a documentation compiler, a test | ||
runner, a WAR archive packager, and support for executing | ||
modular programs on the JVM and Node.js, | ||
- a powerful module architecture for code organization, | ||
dependency management, and module isolation at runtime, | ||
- the [language module][ceylon.language], our minimal, | ||
cross-platform foundation of the [Ceylon SDK][sdk], and | ||
- a [full-featured][ide features] Eclipse-based integrated | ||
development environment. | ||
|
||
## Language | ||
|
||
Ceylon is a highly understandable object-oriented language | ||
with static typing. The language features: | ||
|
||
- an emphasis upon __readability__ and a strong bias toward | ||
__omission or elimination of potentially-harmful or | ||
potentially-ambiguous constructs__ and toward highly | ||
__disciplined use of static types__, | ||
- an extremely powerful and uncommonly elegant type system | ||
combining subtype and parametric polymorphism with: | ||
- first-class __union and intersection types__, | ||
- both __declaration-site and use-site variance__, and | ||
- the use of principal types for __local type inference__ | ||
and __flow-sensitive typing__, | ||
- a unique treatment of __function and tuple types__, | ||
enabling powerful abstractions, along with the most | ||
__elegant approach to `null`__ of any modern language, | ||
- first-class constructs for defining __modules and | ||
dependencies between modules__, | ||
- a very flexible syntax including __comprehensions__ and | ||
support for expressing __tree-like structures__, | ||
- __fully-reified generic types__, on both the JVM and | ||
JavaScript virtual machines, and a unique __typesafe | ||
metamodel__. | ||
|
||
More information about these language features may be | ||
found in the [feature list](/features) and | ||
[quick introduction][quick-intro]. | ||
|
||
## IDE | ||
|
||
Ceylon IDE now features the following improvements, along | ||
with many bugfixes and a number of performance enhancements: | ||
|
||
- improved documentation hover, | ||
- better UI responsiveness, | ||
- support running on Java 9. | ||
|
||
A number of important subsystems have been abstracted and | ||
rewritten in Ceylon, to support the ongoing development of | ||
the new IntelliJ-based IDE for Ceylon. | ||
|
||
## SDK | ||
|
||
The [platform modules][sdk], recompiled for 1.2.1, are | ||
available in the shared community repository, [Ceylon Herd][]. | ||
|
||
This release introduces several new platform modules: | ||
|
||
- `ceylon.numeric` is a cross-platform module containing math | ||
operations for `Integer` and `Float`. In time it will replace parts of | ||
the JVM-only `ceylon.math` module. | ||
- `ceylon.decimal` is a JVM-only module (but soon to be cross-platform) | ||
containing arbitrary-length decimal support. In time it will replace parts of | ||
the JVM-only `ceylon.math` module. | ||
- `ceylon.whole` is a cross-platform module containing arbitrary-length | ||
integer support. In time it will replace parts of | ||
the JVM-only `ceylon.math` module. | ||
- `ceylon.random` is a cross-platform module containing random number | ||
generators. In time it will replace parts of | ||
the JVM-only `ceylon.math` module. | ||
- `ceylon.interop.browser` contains JavaScript-only interoperation | ||
functions and types for the DOM, HTML and `XMLHttpRequest`. | ||
|
||
Along with several API enhancements and bugfixes, including: | ||
|
||
- Many new features for `ceylon.test`, the Ceylon Test Suite. | ||
- Performance improvement of the `ceylon.json` parser. | ||
|
||
## Web IDE | ||
|
||
You can try Ceylon using the [Web IDE][], featuring syntax highlighting, | ||
interactive error reporting, autocompletion, online | ||
documentation, and persistence and code sharing via Gist. | ||
|
||
The Web IDE serves a dual purpose as a standard example | ||
demonstrating the use of Ceylon for web application | ||
development and deployment to the [OpenShift][] cloud | ||
platform. | ||
|
||
## Community | ||
|
||
The Ceylon community site, <http://ceylon-lang.org>, includes | ||
[documentation][], and information about | ||
[getting involved][community]. | ||
|
||
## Source code | ||
|
||
The source code for Ceylon, its specification, and its website, | ||
is freely available from [GitHub][git]. | ||
|
||
Information about Ceylon's open source licenses is available | ||
[here][license]. | ||
|
||
## Issues | ||
|
||
Bugs and suggestions may be reported in GitHub's | ||
[issue tracker][issues]. | ||
|
||
## Migrating from Ceylon 1.2.0 | ||
|
||
Migration from Ceylon 1.2.0 is easy. To recompile a module for | ||
1.2.1: | ||
|
||
- First ensure that its dependencies have also been | ||
recompiled. | ||
- If it imports a Ceylon SDK platform module, upgrade the | ||
version number specified by the module `import` statement | ||
from `"1.2.0"` to `"1.2.1"` . | ||
- If it was compiled against Ceylon `1.2.0` you should still | ||
be able to use it in `1.2.1` for the JVM backend, | ||
as it is backwards-compatible. Sadly, this is not the case | ||
for the JavaScript backend, and so you will need to recompile | ||
your modules with `1.2.1`. | ||
|
||
## Acknowledgement | ||
|
||
As always, we're deeply grateful to the community volunteers | ||
who contributed a substantial part of the current Ceylon | ||
codebase, working in their own spare time. The following | ||
people have contributed to Ceylon: | ||
|
||
Gavin King, Stéphane Épardaud, Tako Schotanus, Tom Bentley, | ||
David Festal, Enrique Zamudio, Bastien Jansen, | ||
Emmanuel Bernard, Aleš Justin, Tomáš Hradec, James Cobb, | ||
Ross Tate, Max Rydahl Andersen, Mladen Turk, | ||
Lucas Werkmeister, Roland Tepp, Diego Coronel, Matej Lazar, | ||
John Vasileff, Toby Crawley, Julien Viet, Loic Rouchon, | ||
Stephane Gallès, Ivo Kasiuk, Corbin Uselton, Paco Soberón, | ||
Michael Musgrove, Daniel Rochetti, Henning Burdack, | ||
Luke deGruchy, Rohit Mohan, Griffin DeJohn, Casey Dahlin, | ||
Alexander Altman, Alexander Zolotko, Alex Szczuczko, | ||
Andrés G. Aragoneses, Anh Nhan Nguyen, Brice Dutheil, | ||
Carlos Augusto Mar, Charles Gould, Chris Gregory, klinger, | ||
Martin Voelkle, Mr. Arkansas, Paŭlo Ebermann, Vorlent, | ||
Akber Choudhry, Renato Athaydes, Flavio Oliveri, | ||
Michael Brackx, Brent Douglas, Lukas Eder, Markus Rydh, | ||
Julien Ponge, Pete Muir, Nicolas Leroux, Brett Cannon, | ||
Geoffrey De Smet, Guillaume Lours, Gunnar Morling, | ||
Jeff Parsons, Jesse Sightler, Oleg Kulikov, Raimund Klein, | ||
Sergej Koščejev, Chris Marshall, Simon Thum, Maia Kozheva, | ||
Shelby, Aslak Knutsen, Fabien Meurisse, Sjur Bakka, | ||
Xavier Coulon, Ari Kast, Dan Allen, Deniz Türkoglu, | ||
F. Meurisse, Jean-Charles Roger, Johannes Lehmann, allentc, | ||
Nikolay Tsankov, Chris Horne, Gabriel Mirea, Georg Ragaller, | ||
Harald Wellmann, klinger, Oliver Gondža, Stephen Crawley, | ||
Byron Clark, Francisco Reverbel, Jonas Berlin, Luke Hutchison, | ||
Nikita Ostroumov, Santiago Rodriguez, Sean Flanigan. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.