Ceylon
Ceylon — мова програмування, котра створюється компанією Red Hat як мова загального призначення, що претендує на роль заміни Java. Написані мовою Ceylon програми і модулі можуть виконуватися в стандартній віртуальній машині Java (JVM) або компілюватися в JavaScript для виконання у веб-браузері або під управлінням Node.js. Для розробки застосунків надаються Ceylon SDK, колекція модулів і інтегроване середовище розробки Ceylon IDE, побудоване на основі платформи Eclipse. Сирцевий код пов'язаних з мовою компонентів поширюється під ліцензією GPLv2, а код середовища розробки під ліцензією EPL. Бінарні пакунки можна завантажити у форматах deb і rpm.
Ceylon | |
---|---|
Файл:Ceylon (programming language) logo.png | |
Парадигма | об'єктно-орієнтована |
Дата появи | 2011 |
Творці | Gavin King, Red Hat |
Розробник | Red Hat[1][2] і Gavin Kingd |
Останній реліз | 1.3.1[3] (29 жовтня 2015 ) |
Система типізації | статична, безпечна |
Під впливом від | Java, Scala, Smalltalk |
Платформа | Віртуальна машина Java[4] і JavaScript[4] |
Операційна система | крос-платформова програма |
Ліцензія | Apache v2 |
Звичайні розширення файлів |
.ceylon |
Репозиторій вихідного коду | github.com/ceylon/ceylon |
Вебсайт | ceylon-lang.org |
Лідером розробки є Ґевін Кінг (Gavin King), засновник проектів Hibernate і Seam. Метою створення Ceylon було бажання позбавити Java від застарілих концепцій і підходів, які заважають подальшій еволюції мови та досягненню вищого рівня ефективності. Крім реалізації найкращих можливостей Java, у Ceylon також запозичені деякі додаткові конструкції з мов Smalltalk, Python і ML. Підтримується безшовна інтеграція з іншими мовами, що базуються на JVM, наприклад, модулі на мові Ceylon можна використовувати у програмах на Java і навпаки.
Мова використовує статичну типізацію і спроектована з оглядкою на простоту вивчення, легкість сприйняття коду і розробку великих проектів, в яких бере участь велика кількість програмістів. Синтаксис Ceylon у чомусь нагадує Сі, Java і C#. За допомоги Ceylon значно простіше створювати фреймворки і бібліотеки класів, а також природно описувати деревовидні структури (зокрема, формувати користувацький інтерфейс). У мову додані елементи, що спрощують написання коду, який можна використовувати повторно в інших проектах.
Модулі на мові Ceylon упаковуються в архіви .car і поміщаються у спеціальні репозиторії. В процесі виконання застосунку потрібні модулі завантажуються відразу із зовнішнього чи локального репозиторію, не вимагаючи попередньої установки. Мова підтримує архітектуру модульного "peer-to-peer" завантаження класів, що володіє такими можливостями як облік вимог застосунка до версій модулів і підтримку роботи відразу з декількома репозиторіями модулів, як локальними, так і зовнішніми.
Примітки
- http://ceylon-lang.org/community/companies/
- http://ceylon-lang.org/community/
- King, Gavin. Ceylon 1.2.0 is now available. Процитовано 21 листопада 2016.
- http://ceylon-lang.org/documentation/1.1/spec/html_single/#runtimeandplatform