Выпуск языка программирования Crystal 1.2
Автор
Сообщение
news_bot ®
Стаж: 7 лет 2 месяца
Сообщений: 27286
Опубликован релиз языка программирования Crystal 1.2, разработчики которого пытаются совместить удобство разработки на языке Ruby с высокой производительностью приложений, свойственной языку Си. Синтаксис Crystal близок к языку Ruby, но не полностью совместим с ним, несмотря на то, что без переработки выполняются некоторые ruby-программы. Код компилятора написан на языке Crystal и распространяется под лицензией Apache 2.0.
В языке применяется статическая проверка типов, реализованная без необходимости явного указания типов переменных и аргументов методов в коде. Программы на Crystal компилируются в исполняемые файлы, с вычислением макросов и генерацией кода во время компиляции. В программах на языке Crystal допускается подключение биндингов, написанных на языке Си. Распараллеливание выполнения кода осуществляется при помощи ключевого слова "spawn", которое позволяет запустить фоновую задачу в асинхронном режиме, не блокируя основной поток, в виде легковесных потоков, именуемых файберами (Fiber).
Стандартная библиотека предоставляет большой набор типовых функций, в том числе средства для обработки CSV, YAML, и JSON, компоненты для создания HTTP-серверов и поддержки WebSocket. В процессе разработки удобно использовать команду "crystal play" которая формирует web-интерфейс (по умолчанию localhost:8080) для интерактивного выполнения кода на языке Crystal.
Основные изменения:
- Добавлена возможность назначения подкласса обобщенного класса элементу родительского класса.
class Foo(T); end
class Bar(T) < Foo(T); end
x = Foo
x = Bar
- В макросах для игнорирования значения в цикле "for" теперь можно использовать символ подчёркивания.
{% for _, v, i in {1 => 2, 3 => 4, 5 => 6} %}
p {{v + i}}
{% end %}
- В макросы добавлен метод "file_exists?" для проверки существования файла.
- В стандартной библиотеке реализована поддержка 128-разрядных целых чисел.
- Добавлен модуль Indexable::Mutable(T) с реализацией расширенных операций для коллекций, таких как BitArray и Deque.
ba = BitArray.new(10) # ba = BitArray[0000000000]
ba[0] = true # ba = BitArray[1000000000]
ba.rotate!(-1) # ba = BitArray[0100000000]
- Добавлен метод XML::Node#namespace_definition для извлечения специфичного пространства имён из XML.
- Объявлены устаревшими методы IO#write_utf8 и URI.encode, вместо которых следует использовать IO#write_string и URI.encode_path.
- На второй уровень перемещена поддержка 32-разрядной архитектуры x86 (готовые пакеты больше не формируются). Готовится перевод на первый уровень поддержки архитектуры ARM64.
- Продолжена работа по обеспечению полноценной поддержи платформы Windows. Добавлена поддержка Windows-сокетов.
- Для macOS добавлен универсальный пакет, работающих как на устройствах с процессорами x86, так и на оборудовании с чипом Apple M1.
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://crystal-lang.org/2021/...)
- OpenNews: Доступен язык программирования Crystal 1.0
- OpenNews: Доступна операционная система Lilith 0.0.5, написанная на языке Crystal
- OpenNews: Язык Crystal пытается совместить производительность Си и удобство Ruby
- OpenNews: Выпуск Snek 1.6, Python-подобного языка программирования для встраиваемых систем
- OpenNews: Доступны язык Dart 2.14 и фреймворк Flutter 2.5
Похожие новости:
- [Мессенджеры, Программирование, Разработка игр, Логические игры] Настольная игра в 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 Dynamics | Tomb Raider (2013)] «Tomb Raider: Лара Крофт» и Tomb Raider: Игромания сравнивает игру и трейлер
- [Crystal Dynamics, Eidos Montréal, Nixxes Software BV | Tomb Raider (2013)] Алисия Викандер притворяется Ларой Крофт в дебютном трейлере новой экранизации Tomb Raider
- [Crystal Dynamics | The Avengers Project] Тhe Avengers Project может стать онлайновым приключенческим экшеном от третьего лица
Теги для поиска: #_crystal
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 04-Май 17:56
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 7 лет 2 месяца |
|
Опубликован релиз языка программирования Crystal 1.2, разработчики которого пытаются совместить удобство разработки на языке 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-Май 17:56
Часовой пояс: UTC + 5