Выпуск компилятора для языка программирования Vala 0.50.0
Вышла новая версия компилятора для языка программирования Vala 0.50.0. Код на Vala транслируется в программу на языке C, которая, в свою очередь, компилируется в бинарный файл и выполняется со скоростью приложения, откомпилированного в объектный код целевой платформы. Vala является самым используемым языком в GNOME после C (C, Vala, Python, C++), а также основным языком в Elementary OS.
Язык Vala по своему синтаксису очень похож на C# и полностью реализует объектно-ориентированный подход. Поддерживаются интроспекция, выведение типов, сборка мусора за счет автоматической подстановки вызовов деструкторов на этапе компиляции (ARC как в Swift), лямбда-функции, концепция сигналов и слотов, подобная используемой в Qt, но реализованная на уровне языка, строковые типы, обобщённое программирование, срезы массивов, оператор перечисления элементов коллекции foreach, делегаты, замыкания, интерфейсы, свойства и исключения.
Самые заметные изменения:
- Новое ключевое слово with для синтаксиса каскадных вызовов. Внутри with поддерживается создание локальных переменных:
with (var x = y ())
Вызов функций, возвращающих значение:
with (y ())
Подключение сигналов, строгий non null режим и вызов новых «with» рекурсивно.
- Новый синтаксис срезов — теперь пустота считаются за первый или последний элемент коллекции.
array[begin:] => array[begin:array.length-1] array[:end] => array[0:end] array[:] => array[0:array.length-1]
- Упрощено переписывание C-проектов на Vala по частям (когда в проекте будет множество вызовов Vala кода из C и наоборот).
- Реализованы не виртуальные сигналы с телом функции.
- Обеспечено наследование пространства имён потомка.
Источник: http://www.opennet.ru/opennews/art.shtml? num=53741
© OpenNet