| |
Представлен язык программирования Ceylon 1.1.0, развиваемый компанией Red Hat в качестве языка общего назначения, претендующего на роль замены Java. Написанные на языке Ceylon программы и модули могут выполняться в стандартной виртуальной машине Java (JVM) или компилироваться в JavaScript для выполнения в web-браузере или под управлением Node.js. Для разработки приложений предоставляются Ceylon SDK, коллекция модулей и интегрированная среда разработки Ceylon IDE, построенная на основе платформы Eclipse. Код связанных с языком компонентов распространяется под лицензией GPLv2, а код среды разработки под лицензией EPL. Бинарные пакеты можно загрузить в форматах deb и rpm.
Лидером разработки является Гэвин Кинг (Gavin King), основатель проектов Hibernate и Seam. Целью создания Ceylon было желание избавить Java от устаревших концепций и подходов, которые мешают дальнейшей эволюции языка и достижению более высокого уровня эффективности. Кроме реализации лучших возможностей Java, в Ceylon также заимствованы некоторые дополнительные конструкции из языков Smalltalk, Python и ML. Поддерживается бесшовная интеграция с другими языками, базирующимися на JVM, например, модули на языке Ceylon можно использовать в программах на Java и наоборот.
Язык использует статическую типизацию и спроектирован с оглядкой на простоту изучения, лёгкость восприятия кода и разработку больших проектов, в которых участвует большое число программистов. Синтаксис Ceylon во многом напоминает Си, Java и C#. При помощи Ceylon значительно проще создавать фреймворки и библиотеки классов, а также естественно описывать древовидные структуры (в частности, формировать пользовательский интерфейс). В язык добавлены элементы, упрощающие написание кода, который можно использовать повторно в других проектах.
Модули на языке Ceylon упаковываются в архивы .car и помещаются в специальные репозитории. В процессе выполнения приложения нужные модули загружаются сразу из внешнего или локального репозитория, не требуя предварительной установки. Язык поддерживает архитектуру модульной "peer-to-peer" загрузки классов, обладающую такими возможностями как учет требований приложения к версиям модулей и поддержку работы сразу с несколькими репозиториями модулей, как локальными, так и внешними.
По сравнению с прошлым выпуском внесено более 1400 изменений. Из наиболее заметных улучшений можно отметить:
- Оптимизация производительности, в том числе сокращение времени компиляции в среде разработки;
- Более гладкое взаимодействие с перегрузкой (overloading) и шаблонами (generic) Java;
- Поддержка из коробки средств для развёртывания Ceylon-модулей в контейнерах OSGi;
- Расширение возможностей Ceylon SDK, добавление новых базовых модулей платформы ceylon.promise, ceylon.locale и ceylon.logging, существенное улучшение ранее доступных модулей ceylon.language, ceylon.collection, и ceylon.test;
- Добавление новых возможностей в среду разработки Ceylon IDE, таких как новая система автоформатирвоания кода;
- Расширение инструментов командной строки через плагины. Например, представлены плагины для форматирования кода и обеспечения сборки;
- Подготовлен официальны модуль для интеграции с JVM-платформой Vert.x.
Некоторые Особенности Ceylon:
- Статическая типизация (тип любого значения любого выражения может быть определён без исполнения программы), позволяющая выявлять ошибки на этапе компиляции, а не в процессе исполнения;
- Отсутствие специальных типов, всё реализовано в виде объектов;
- Именованные и опциональные параметры;
- Nullable-типы (кроме значений базового типа, допускается использование состояний NULL);
- Отсутствие необходимости явного указания геттеров/сеттеров (getter/setters);
- Определение типов для локальных блоков (через ключевое слово "local");
- Удобная организация работы с последовательностями (массивами);
- Реализация функций высшего порядка, аргументом или возвращаемым результатом в которых выступают другие функции;
- Использование для присвоения первоначальных значений (инициализации переменных) оператора ":=";
- Новый синтаксис интерполяции строк;
- Новые типы: Natural, Numeric и т.п.
- Классы, методы и атрибуты выглядят одинаково;
- Использование для определения существующих языковых концепций новых ключевых слов: shared, satisfies, assign, variable, local;
- Упрощение уровней public, protected, private access, visibility;
- Определение inline-функций в стиле Smalltalk.
|
|
- Главная ссылка к новости (http://ceylon-lang.org/blog/2014/10/09/c...)
- OpenNews: Выпуск языка программирования Ceylon 1.0.0, развиваемого Red Hat в качестве альтернативы Java
- OpenNews: Первый релиз развиваемого компанией Red Hat языка программирования Ceylon
- OpenNews: Компания Red Hat представила сайт и код нового языка программирования Ceylon
- OpenNews: Компания Red Hat представила язык программирования Ceylon, призванный заменить Java
| Тип: Программы | Ключевые слова: ceylon, (найти похожие документы) | При перепечатке указание ссылки на opennet.ru обязательно | Реклама |
id=adv>
| |
| 2.17, dewfc, 00:00, 11/10/2014 [ ^] [ ответить] [ смотреть все] [ показать ветку] [ к модератору] +3 +/–
1.3, MPEG LA, 19:21, 10/10/2014 [ответить] [смотреть все] [к модератору] +2 +/–
тайпскрипто- и дарто- капец.
2.7, Аноним, 19:56, 10/10/2014 [^] [ответить] [смотреть все] [показать ветку] [к модератору] –1 +/–А на что вы надеялись, ведь бюджет уже распилен и можно отдохнуть в пабе с собут... весь текст скрыт [ показать] [ показать ветку] 2.8, Аноним, 20:02, 10/10/2014 [^] [ответить] [смотреть все] [показать ветку] [к модератору] +/– 3.18, OramahMaalhur, 01:31, 11/10/2014 [^] [ответить] [смотреть все] [к модератору] +2 +/– который стал не нужным ещё со времён Java EE 6... весь текст скрыт [ показать]
1.10, Fry33, 21:17, 10/10/2014 [ответить] [смотреть все] [к модератору] –3 +/–kotlin куда перспективней выглядит Осталось только запелить на его основе анал... весь текст скрыт [ показать]
2.28, ДяДя, 01:30, 12/10/2014 [ ^] [ ответить] [ смотреть все] [ показать ветку] [ к модератору] +1 +/–
Со всеми JVM-языками есть маленькая неувязочка. Формально доказать корректность многопоточного кода невозможно! Java Memory Model для них НЕТ!!! JMM есть ТОЛЬКО для языка Java. Она определена в Java Language Specification, пункт 17.4 .
1.11, KaE, 22:22, 10/10/2014 [ответить] [смотреть все] [к модератору] +/–
Языков то, языков то развелось....накуйяя???
1.20, Xasd, 05:14, 11/10/2014 [ответить] [смотреть все] [к модератору] –1 +/–
писать для Android -- можно на нём?
1.22, Аноним, 09:02, 11/10/2014 [ответить] [смотреть все] [к модератору] +/–Кто видел скАла над цейлоном не смеется ... весь текст скрыт [ показать]
|
2.30, Нимо Ан, 03:24, 12/10/2014 [^] [ответить] [смотреть все] [показать ветку] [к модератору] | –1 +/– |
> Кто видел скАла над цейлоном не смеется
Что Вы хотите этим сказать? Как по мне так как раз наоборот: после программирования на Scala лично я стал воспринимать Java не иначе как ассемблер JVM-машины, а Ceylon и тому подобное - как жалкие пародии на Scala.
| | |
1.23, YetAnotherOnanym, 11:47, 11/10/2014 [ответить] [смотреть все] [к модератору] +/–
Теперь Сапописа1 должна представить язык "Мадагаскар". А чо, там тоже пингвины.
1.25, Аноним, 13:58, 11/10/2014 [ответить] [смотреть все] [к модератору] +1 +/–Неудачное название - с индусами ассоциируется ... весь текст скрыт [ показать]
|
3.27, ffirefox, 17:46, 11/10/2014 [^] [ответить] [смотреть все] [к модератору] | +/– |
Так китайцы в школах и институтах до сих пор изучают философию с уклоном к Марксу, а там один из законов творческое развития диалектики Гегеля это закон перехода количественных изменений в качественные. А китайцев много.
| | | 3.33, Нимо Ан, 03:29, 12/10/2014 [ ^] [ ответить] [ смотреть все] [ к модератору] –1 +/–
Побывайте в Китае и побывайте в Индии - это "день и ночь", Китай уже сам практически как Америка, а местами даже лучше.
1.35, edwin3d, 10:14, 13/10/2014 [ответить] [смотреть все] [к модератору] +/–
Как мне кажется, на сегодня главной задачей и позиционированием языка должна стать замена JS.
Именно JS, от которого хочется б..ть.
С этой точки зрения проект интересен - тем более, что проект как раз подразумевает соот. моменты.
Что до Java .... хммм, мне лично Scala и Groovy как-то симпатичнее.
Ваш комментарий
Read more |