LINUX.ORG.RU

Первый официальный релиз языка Ceylon

 , ,


0

4

Представлен 1-й официальный релиз языка Ceylon M1 «Newton». Ceylon - это JVM-язык, предназначенный для написания бизнес-приложений и разрабатываемый компанией RedHat. Релиз включает в себя компилятор, документацию к компилятору, языковой модуль и рантайм.

Возможности языка:

  • примитивные типы JVM являются простыми классами в Ceylon;
  • вывод типов и вывод типов аргументов базируемый на анализе основных типов;
  • упрощено определение классов: удалены геттеры, сеттеры и конструкторы;
  • опциональные параметры со значениями по умолчанию;
  • именованные аргументы и «object builder» синтаксис;
  • типы пересечения (intersection types), типы объединения (union types) и фундаментальные типы (bottom types);
  • статическая проверка null-значений и пустых последовательностей;
  • ковариантность и контравариантность в декларациях вместо wildcard типов;
  • более элегантный синтаксис для ограничений типов (type constraints);
  • top-level функции и декларация значений вместо статических членов вложенных функций;
  • иммутабельность по умолчанию.

Возможности, которые будут реализованы в следующих релизах:

  • функции высшего порядка;
  • comprehensions;
  • алгебраические типы данных, перечислимые типы, switch/case;
  • усовершенствование членов классов (member class refinement);
  • конкретизируемые генерики (reified generics);
  • определяемые пользователем аннотации и типобезопасная метамодель.

Скачать Ceylon

Исходники на github

>>> Подробности

★★★★★

Проверено: maxcom ()
Последнее исправление: encyrtid (всего исправлений: 2)
Ответ на: комментарий от loz

Подходит. Но развивать направление надо. Вопрос в другом, Scala же прекрасна.

vertexua ★★★★★
()
Ответ на: комментарий от anonymous

Где это видано, чтобы в языке не было конструкторов? А наследуют они тогда от кого?

залогинься, идиот, не позорь доброе имя анонимуса

anonymous
()
Ответ на: комментарий от tailgunner

Тормозить нравится вам

может быть и так, ибо совершенно утерял нить дискуссии

yyk ★★★★★
()
Ответ на: комментарий от Macil

А ты, значит, разницы не ощущаешь?

я не готов платить тормозами фабрики сейчас ради иллюзорного выигрыша завтра

yyk ★★★★★
()
Ответ на: комментарий от anonymous

Как вам не стыдно, милостивый сударь! Вы вызывающе некультурны, и пидор, наверное.

anonymous
()
Ответ на: комментарий от yyk

я не готов платить тормозами фабрики сейчас ради иллюзорного выигрыша завтра

так в этом вся соль ООП - наплодить всяких сущностей, которые вроде как помогут когда-нибудь.

RedPossum ★★★★★
()

Не выдержит конкуренции с дотнетом, шарпом и виндоус.

anonymous
()

Хороший язык. Java done right. Слежу с интересом.

reserved
()
Ответ на: комментарий от gensym

Только ради этого, нужно сначала выкопать шахту в 8 километров глубиной, стоит ли?

anonymous
()

А можно ссылку о Цейлоне на оф. сайте RedHat? А то мало ли, может эту поделку на досуге наваяли детишки редхатовских разрабов)))

Bbore
()
Ответ на: комментарий от RedPossum

Толсто. Фабрики нужны когда мы не знаем типа объекта, который хотим создать, когда нам нужна обработка ошибок при создании объекта, или когда мы не хотим раздувать объект десятком конструкторов.

farafonoff ★★
()
Ответ на: комментарий от yyk

я не готов платить тормозами фабрики сейчас ради иллюзорного выигрыша завтра

Тормоза? Тормоза будут возникать из-за того, что логика частных конструкторов не будет сводиться к приведению типа аргументов. Но тогда вся абстракция будет похерена, что не есть гут. Т.е. в таком случае ты самым банальнейшим образом выставляешь на показ детали реализации, провоцируешь пользователей класса изучать его внутреннюю структуру и принимать решения, основываясь на ней.

Много раз уже повторял и еще раз повторю. Класс в мейнстрим ООП тройственен по своей природе: класс-как-тип, класс-как-интерфейс и класс-как-поведение. Ты говоришь с позиций «поведения»: «тормозит» т.е. Но не нужно забывать про другие аспекты ООП и сложности которые возникнут с остальными в случае бездумного перетягивания одеяла на какую-то из них.

Если поведенческий аспект тебе важен, то мейнстрим-ООП - не самая лучшая парадигма.

Цейлон же концентрируется на аспекте класс-как-тип. Отсюда, например, полная зависимость от аргументов конструктора. Ты как бы можешь, либо принять сей подход, либо - не пользоваться. Но не нужно все сводить на «тормоза».

Macil ★★★★★
()

Симпатичный у них веб-сайт.

CARS ★★★★
()

Кто-нибудь уже пробовал? Как оно?

cattail
()

Возможности, которые будут реализованы в следующих релизах:

  • функции высшего порядка;
  • алгебраические типы данных, перечислимые типы, switch/case;

Пускай делают. Без этого не нужно.

pitekantrop ★★★
()

алгебраические типы данных

Нет их там. Обсуждали уже, то что там названо ADT - бред пятилетнего ГСМ-выродка.

anonymous
()
Ответ на: комментарий от anonymous

Нет их там. Обсуждали уже, то что там названо ADT - бред пятилетнего ГСМ-выродка

А можно ссылку?

encyrtid ★★★★★
() автор топика
Ответ на: комментарий от Macil

Ты как бы можешь, либо принять сей подход, либо - не пользоваться

Это то понятно. Не понятна такая «односторонняя и безальтернативная» приверженность «аспекту класс-как-тип». Могли бы сделать возможность задавать и альтернативные конструкторы (не вижу принципиальных противоречий).

Вернее не совсем понятен подход, когда «добавляя уровни абстракций» перекрывают напрочь доступ к каким-то другим возможностям и без того не слишком то «богатой» JVM, и это касается не только Цейлона, а и всех прочих «новых» языков для JVM.

Ну да ладно - как хотели, так и сделали.

yyk ★★★★★
()

Насколько оно шустрое?

CYB3R ★★★★★
()
Ответ на: комментарий от tailgunner

Это Скала в понимании школьника-троечника

Это Скала в понимании шри-ланкийского программиста :)

Karapuz ★★★★★
()
Ответ на: Facepalm 2.0 от umren

по одной простой причине, что под JVM куча унылогавнистых языков

ну допустим Scala - это реально новая занятная штука, у которой есть реальная практическая ниша. Groovy тоже имеет привлекательность, хоть и с оговорками. но остальное имхо просто just for fun, и не более того.

репутация Red Hat весьма позитивна, и от них я ожидаю полезный и привлекательный инструмент.что касательно цейлона - не будем торопиться с выводами. обязательно попробую в работе этот новый зык, возможно это и правда стоящая вещь.

Voviandr
()

Ceylon вышел. Теперь ждём выхода Kotlin.

anonymous
()
Ответ на: комментарий от niXman

пиля, сколько языков появляется %) модно, что-ли?

Конечно, модно. Так что бросай свой инсталлятор на баше, начинай пилить свой ЯП. ;)))

OldFatMan
()

вопрос: вот засверлило у меня в одном месте - я хочу писать на ceylon - что делать? скачал архив - что дальше? в какую IDE подсовывать язык этот? в какой есть автокомплит для этого языка?

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от OldFatMan

так же как и в случае языка Vala, который кстати торт, считаю что ЯП состоялся если есть хоть одно нормальное IDE для работы с ним

времена голых ЯП - в 70-x 80-x годах прошлого века остались

придумал ЯП? подумай о IDE для начала, а потом уже говори «релиз» - ИМХО

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Вроде они собирались для эклипса плагин запилить.

Nagwal ★★★★
()
Ответ на: комментарий от bga_

Это не ко мне - это к «любителю мокрософта». Я и vim/emacs обойдусь. ;)

OldFatMan
()
Ответ на: комментарий от bga_

не сложно, но кто это будет делать? тот кому срочно надо начинать делать какой-то проект? а вообще, на счет не сложно, я так понимаю ты лично запили поддержку двух языков для eclipse?

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

пока что в планах. язык только на бумажке и в голове

bga_ ★★★★
()

А зачем?

«Pluralitas non est ponenda sine necessitate» (с)

Bioreactor ★★★★★
()

Так оно нужно или нет? Впадло комменты читать.

anonymous
()
Ответ на: Facepalm 2.0 от umren

целиком согласен ! лучше бы прикладными библиотеками озаботились !

anonymous
()
Ответ на: комментарий от gensym

Нужно еще хлорочкой присыпать, чтоб наверняка.

Это кто ж тебя так научил доширак готовить?!

le_legioner ★★
()

Может, конечно, и хороший и интересный язык, но зачем он нужен, если есть Скала?

ovk48 ★★★
()

Не нужно. Программисты на Java делятся на 3 типа: 1. Уставшие от жизни - им джавы по горло хватает, разобраться в тремя новыми фичами раз в 5 лет и хватит. 2. Интересующиеся прогрессом, но без фанатизма. Они осилили Scala в той или иной мере и иногда просят первых перевести проект на неё. Первые испуганно отказываются. 3. Интересующиеся прогрессом с фанатизмом. Им, конечно, всё интересно, но большинство из них не работает и вообще сессию надо сдавать.

Если бы цейлон сейчас был на месте скалы, может и взлетело бы. А так - очередной маргинальный язычок, непонятно кому нужный. Большинство джаву толком не знает. Кому хочется заморочиться - скала хороший язык без явных недостатков, достаточно вылизанная и умеющая больше.

Конечно если в его маркетинг влить несколько миллиардов, там всяких фаулеров подключить, 30 книжек написать, то взлетит. Но вряд ли кто то будет этим заниматься.

Legioner ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.