//Без комментариев – Цейлон 1.3 и Джулия 0.5.0


• Выпущен Цейлон 1.3.0

• Доступен выпуск Julia 0.5.0

Иногда новости достаточно хорошо освещаются в других местах, и нам мало что остается добавить, кроме как довести их до вашего сведения.

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

Выпущен Цейлон 1.3.0

Цейлон-это современный, модульный, статически типизированный язык программирования для виртуальных машин Java и JavaScript, созданных Red Hat.

Язык имеет гибкий и очень читаемый синтаксис, систему статических типов, архитектуру модулей и IDE, поддерживающую как IntelliJ IDEA, так и платформу Eclipse.

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

Это первый выпуск Ceylon, который поддерживает разработку Android, менеджер пакетов узлов (npm) и WildFly Swarm. Он также теперь поддерживается плагином IntelliJ, который также работает с Android Studio. 

Изменения

Усовершенствования языка и дистрибутива командной строки включают в себя: 

поддержка разработки приложений для Android

поддержка импорта модулей из npm и публикации модулей Цейлона в npm

поддержка разработки микросервисов с роем диких мух

кросс-платформенные службы, абстрагирующие загрузчик служб Java

добавление инструмента fat-jar для упаковки цейлонской программы и ее зависимостей в единую сборку

гораздо более тонкое время выполнения

деструктурирование параметров анонимных функций

деструктурирование в случаях переключения

добавление интерфейса CorrespondenceMutator

добавление коллекции.()

небольшие и с аннотациями

множество незначительных улучшений во взаимодействии с Java

экспериментальная поддержка процессоров Java APT

улучшено поведение для тестов is с универсальными типами Java

правильный набор текста для вещей с аннотацией @Nullable/@NotNull в Java

полная поддержка Java 8

уменьшенный объем памяти для проверки типов

Теперь доступны изображения докеров для Цейлона, что позволяет очень легко опробовать Цейлон. 

Доступен релиз Julia 0.5.0

Последняя версия “научного” языка Джулии доступна для скачивания с Github. 

Новые языковые функции

Выражения генератора:f(i) для i в 1:n. Это возвращает итератор, который вычисляет указанные значения по требованию. Это полезно для вычисления, например, суммы(f(i) для i в 1:n) без создания промежуточного массива значений.

Генераторы и понимания поддерживают фильтрацию с использованием “если” и вложенную итерацию с использованием нескольких ключевых слов ” для` .

Синтаксис слитого вещания: `f.(args…)` эквивалентен `broadcast(f, args…)`, а вложенные вызовы “f.(g.(args…))” объединяются в один цикл “broadcast” Аналогично синтаксису ” x .= …` эквивалентно `трансляции!(identity, x, …)` вызов и слияние с вложенными “точечными” вызовами; кроме того, “x .+= y” и аналогичные теперь эквивалентны “x .= x .+ y”, а не “x =x.+y”.

Функции расширения макросов теперь являются универсальными, поэтому макросы могут иметь несколько определений (например, для разного количества аргументов или необязательных аргументов). Однако обратите внимание, что типы аргументов относятся к представлению синтаксического дерева, а не к типам значений времени выполнения.

Функции Varargs, такие как ” foo{T}(x::T…)”, теперь могут ограничивать количество таких аргументов,используя “foo{T, N}(x::Vararg{T, N}) “”x ∈ X” теперь является синонимом “x в X” в циклах ” для ” и “для”, как это уже было в сравнениях

Глобальный файл ” PROGRAM_FILE` теперь доступен для определения имени запущенного скрипта

Синтаксис “x.:sym” (например, ” Base.:+”) теперь поддерживается, в то время как использование “x.(:sym)” или “x.(i)” для доступа к полю устарело в пользу “getfield”.

Добавлен синтаксис типа возврата функции `function f()::T`. Значения, возвращаемые из функции с таким объявлением, будут преобразованы в указанный тип `T`.

Многие другие операторы теперь поддерживают префиксы”. ” (например,”.≤`). Тем не менее, пользователям не рекомендуется перегружать их, поскольку они в основном анализируются для реализации обратной совместимости с запланированной автоматической трансляцией точечных операторов в Julia 0.6. Явно определенные имена операторов, такие как `Base.≤` теперь следует использовать “Base.:≤” (с префиксом “@compat`, если вам нужна совместимость с помощью пакета “Compat”).

Устранение расширяемой пользователем проверки границ теперь возможно с помощью нового макроса “@boundscheck”. Этот макрос отмечает границы проверки кодовых блоков, которые компилятор может удалить при обнаружении внутри вызова “nbounds”.

На веб-сайте есть список взломов и других изменений. 

У Джулии много конкурентов, и многие пользователи по-прежнему предпочитают Python, R и Matlab/Octave. Некоторые даже цепляются за ФОРТРАН. 

Чтобы получать информацию о новых статьях на I Programmer, подпишитесь на нашу еженедельную рассылку,подпишитесь на RSS-канал и следуйте за нами в Twitter, Facebook, Google+ или Linkedin.

Комментарии

Сделайте комментарий или Просмотрите существующие комментарии С помощью Disqus


Добавить комментарий