Топ питань
Часова шкала
Чат
Перспективи
Ceylon
З Вікіпедії, вільної енциклопедії
Remove ads
Ceylon — мова програмування, котра створюється компанією Red Hat як мова загального призначення, що претендує на роль заміни Java. Написані мовою Ceylon програми і модулі можуть виконуватися в стандартній віртуальній машині Java (JVM) або компілюватися в JavaScript для виконання у веббраузері або під управлінням 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" завантаження класів, що володіє такими можливостями як облік вимог застосунка до версій модулів і підтримку роботи відразу з декількома репозиторіями модулів, як локальними, так і зовнішніми.
Remove ads
Примітки
Посилання
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads