Выпуск языка программирования Crystal 1.6
Автор
Сообщение
news_bot ®
Стаж: 7 лет 2 месяца
Сообщений: 27286
Опубликован релиз языка программирования Crystal 1.6, разработчики которого пытаются совместить удобство разработки на языке Ruby с высокой производительностью приложений, свойственной языку Си. Синтаксис Crystal близок к языку Ruby, но не полностью совместим с ним, несмотря на то, что без переработки выполняются некоторые ruby-программы. Код компилятора написан на языке Crystal и распространяется под лицензией Apache 2.0.
В языке применяется статическая проверка типов, реализованная без необходимости явного указания типов переменных и аргументов методов в коде. Программы на Crystal компилируются в исполняемые файлы, с вычислением макросов и генерацией кода во время компиляции. В программах на языке Crystal допускается подключение биндингов, написанных на языке Си. Распараллеливание выполнения кода осуществляется при помощи ключевого слова "spawn", которое позволяет запустить фоновую задачу в асинхронном режиме, не блокируя основной поток, в виде легковесных потоков, именуемых файберами (Fiber).
Стандартная библиотека предоставляет большой набор типовых функций, в том числе средства для обработки CSV, YAML, и JSON, компоненты для создания HTTP-серверов и поддержки WebSocket. В процессе разработки удобно использовать команду "crystal play" которая формирует web-интерфейс (по умолчанию localhost:8080) для интерактивного выполнения кода на языке Crystal.
Основные изменения:
- Изменена логика перегрузки - при перегрузке объединения типов теперь рассматриваются раньше одиночных типов. Например, выполнение нижеприведённого кода теперь выведет значение true, а не 'а', как было в прошлых выпусках.
module Foo(T)
end
class Bar1
include Foo(Int32)
end
class Bar2
include Foo(Int32)
end
def foo(x : Foo(Int32))
'a'
end
def foo(x : Bar1 | Bar2)
true
end
foo(Bar1.new)
- Для всех платформ реализованы методы #system_echo и #system_raw, что позволило перевести в разряд устаревших макросы FileDescriptor "cooked_from_tc_mode!", "noecho_from_tc_mode!" и "raw_from_tc_mode!", а методы #noecho! и #raw! теперь возвращают nil вместо значения LibC.tcsetattr.
- Улучшен API File, который теперь возвращает внутренний объект (возвращается File::Info вместо Crystal::System::FileInfo).
- Улучшена работа в режиме интерпретатора. Для включения поддержки интерпретатора можно использовать команду "make interpreter = 1".
- В компилятор и стандартную библиотеку включены новые оптимизации производительности.
- Улучшена поддержка платформы Windows в компиляторе, в том числе для Windows добавлена возможность сборки интерпретатора и поддержка Mutex.
- Добавлена поддержка Unicode 15.0 и реализован API для нормализации последовательностей Unicode.
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://crystal-lang.org/2022/...)
- OpenNews: Выпуск языка программирования Crystal 1.5
- OpenNews: Релиз языка программирования Nim 1.6.0
- OpenNews: Дрю ДеВолт представил язык системного программирования Hare
- OpenNews: Сотрудник Google развивает язык программирования Carbon, нацеленный на замену C++
- OpenNews: Выпуск языка программирования Julia 1.8
Похожие новости:
- Выпуск языка программирования Crystal 1.5
- NIST утвердил алгоритмы шифрования, устойчивые к квантовым вычислениям
- Выпуск языка программирования Crystal 1.2
- [Мессенджеры, Программирование, Разработка игр, Логические игры] Настольная игра в Telegram с разоблачением
- Доступен язык программирования Crystal 1.0
- [Высокая производительность, Разработка веб-сайтов, Go, Веб-аналитика] Рейтинг скоростных веб-фреймворков 2020
- Доступена операционная система Lilith 0.0.5, написанная на языке Crystal
- [Разработка веб-сайтов, Программирование, Rust, Kotlin, Elixir/Phoenix] Пять перспективных языков программирования со светлым будущим (3 года спустя)
- [Crystal Dynamics | Rise of the Tomb Raider] [Crystal Dynamics | Tomb Raider (2013)] Square Enix многого ожидала от перезапуска Tomb Raider
- [Crystal Dynamics | Tomb Raider (2013)] «Tomb Raider: Лара Крофт» vs Tomb Raider: Сравнение игры и фильма
Теги для поиска: #_crystal
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 04-Май 11:44
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 7 лет 2 месяца |
|
Опубликован релиз языка программирования Crystal 1.6, разработчики которого пытаются совместить удобство разработки на языке Ruby с высокой производительностью приложений, свойственной языку Си. Синтаксис Crystal близок к языку Ruby, но не полностью совместим с ним, несмотря на то, что без переработки выполняются некоторые ruby-программы. Код компилятора написан на языке Crystal и распространяется под лицензией Apache 2.0. В языке применяется статическая проверка типов, реализованная без необходимости явного указания типов переменных и аргументов методов в коде. Программы на Crystal компилируются в исполняемые файлы, с вычислением макросов и генерацией кода во время компиляции. В программах на языке Crystal допускается подключение биндингов, написанных на языке Си. Распараллеливание выполнения кода осуществляется при помощи ключевого слова "spawn", которое позволяет запустить фоновую задачу в асинхронном режиме, не блокируя основной поток, в виде легковесных потоков, именуемых файберами (Fiber). Стандартная библиотека предоставляет большой набор типовых функций, в том числе средства для обработки CSV, YAML, и JSON, компоненты для создания HTTP-серверов и поддержки WebSocket. В процессе разработки удобно использовать команду "crystal play" которая формирует web-интерфейс (по умолчанию localhost:8080) для интерактивного выполнения кода на языке Crystal. Основные изменения:
=========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 04-Май 11:44
Часовой пояс: UTC + 5