Red Hat передаёт язык Ceylon на попечительство организации Eclipse Foundation

Понедельник, 21 августа 2017 г.

Следите за нами в ВКонтакте, Телеграм'e и Twitter'e

Компания Red Hat инициировала процесс передачи управления над разработкой языка программирования Ceylon некоммерческой организации Eclipse Foundation, курирующей развитие платформы для создания интегрированных сред разработки и различных проектов на языке Java. Основной целью передачи проекта является воплощение в жизнь независимой от конкретного производителя модели управления, которая позволит привлечь к разработке новых участников и повысить популярность платформы среди пользователей.

Организация Eclipse Foundation утвердила приём Ceylon в число проектов Eclipse и начала процесс интеграции в инкубаторе. Кроме дистрибутива Ceylon, включающего компиляторы, утилиты, базовые библиотеки и стандартный набор модулей, в руки Eclipse также перейдут SDK, транслятор Java2Ceylon, сервер Ceylon Herd для распространения модулей, интегрированная среда разработки Web IDE, а также плагины для Eclipse IDE и IntelliJ IDE. После перехода под крыло Eclipse Foundation код Ceylon будет распространяться под лицензиями Apache 2.0 и Eclipse Public License 1.0. (ранее, некоторые компоненты поставлялись под AGPL).

Из планов по дальнейшему развитию Ceylon в составе сообщества Eclipse отмечается перевод JVM-бэкенда на ECJ (Eclipse Compiler for Java), завершение реализации средств для обобщённого программирования высшего порядка (higher-order generics), добавление поддержки async/await, обеспечение переносимости с языком TypeScript, реализация в плагине для Eclipse техники отложенной генерации бинарных файлов, интеграция поддержки среды разработки Eclipse Che.

Напомним, что язык Ceylon был создан компанией Red Hat в 2011 году с целью избавить Java от устаревших концепций и подходов, которые мешают дальнейшей эволюции языка и достижению более высокого уровня эффективности. Кроме реализации лучших возможностей Java, в Ceylon были заимствованы некоторые дополнительные конструкции из языков Smalltalk, Python и ML. Написанные на языке Ceylon программы и модули могут выполняться в стандартной виртуальной машине Java (JVM) или компилироваться в JavaScript для выполнения в web-браузере или под управлением Node.js. Поддерживается бесшовная интеграция с другими языками, базирующимися на JVM, например, модули на языке Ceylon можно использовать в программах на Java и наоборот.

Язык использует статическую типизацию и спроектирован с оглядкой на простоту изучения, лёгкость восприятия кода и разработку больших проектов, в которых участвует большое число программистов. Синтаксис Ceylon во многом напоминает Си, Java и C#. При помощи Ceylon значительно проще создавать фреймворки и библиотеки классов, а также естественно описывать древовидные структуры (в частности, формировать пользовательский интерфейс). В язык добавлены элементы, упрощающие написание кода, который можно использовать повторно в других проектах.

Модули на языке Ceylon упаковываются в архивы .car и помещаются в специальные репозитории. В процессе выполнения приложения нужные модули загружаются сразу из внешнего или локального репозитория, не требуя предварительной установки. Язык поддерживает архитектуру модульной «peer-to-peer» загрузки классов, обладающую такими возможностями как учет требований приложения к версиям модулей и поддержку работы сразу с несколькими репозиториями модулей, как локальными, так и внешними.

Некоторые особенности Ceylon:

Статическая типизация (тип любого значения любого выражения может быть определён без исполнения программы), позволяющая выявлять ошибки на этапе компиляции, а не в процессе исполнения;
Отсутствие специальных типов, всё реализовано в виде объектов;
Именованные и опциональные параметры;
Nullable-типы (кроме значений базового типа, допускается использование состояний NULL);
Отсутствие необходимости явного указания геттеров/сеттеров (getter/setters);
Определение типов для локальных блоков (через ключевое слово «local»);
Удобная организация работы с последовательностями (массивами);
Реализация функций высшего порядка, аргументом или возвращаемым результатом в которых выступают другие функции;
Использование для присвоения первоначальных значений (инициализации переменных) оператора »:=»;
Новый синтаксис интерполяции строк;
Новые типы: Natural, Numeric и т.п.
Классы, методы и атрибуты выглядят одинаково;
Использование для определения существующих языковых концепций новых ключевых слов: shared, satisfies, assign, variable, local;
Упрощение уровней public, protected, private access, visibility;
Определение inline-функций в стиле Smalltalk.

Следите за нами в ВКонтакте, Телеграм'e и Twitter'e


Просмотров: 450
Рубрика: Hi-Tech


Архив новостей / Экспорт новостей

Ещё новости по теме:

RosInvest.Com не несет ответственности за опубликованные материалы и комментарии пользователей. Возрастной цензор 16+.

Ответственность за высказанные, размещённую информацию и оценки, в рамках проекта RosInvest.Com, лежит полностью на лицах опубликовавших эти материалы. Использование материалов, допускается со ссылкой на сайт RosInvest.Com.

Архивы новостей за: 2018, 2017, 2016, 2015, 2014, 2013, 2012, 2011, 2010, 2009, 2008, 2007, 2006, 2005, 2004, 2003