Vala
- Русское название:
- вала
- Дата создания:
- 2006
- Создан под влиянием:
- Парадигма:
- Типизация:
- Принятые расширения файлов:
- .vala .vapi
- Реализации и версии (свернуть все | развернуть все):
Vala — мощный язык программирования, предназначенный для прикладного и системного программирования. Создан Йюргом Биллетером и Раффаэлем Сандрини. Очень зависим от библиотек, т. к. не имеет стандартной библиотеки.
Последняя версия — 0.30, была выпущена 18 сентября 2015 года. Распространяется под лицензией GNU LGPL, что позволяет использовать его как в свободном, так и в проприетарном ПО.
Для компиляции код на vala переводится в код на C, чем можно добиться скорости выполнения, а затем компилируется командой cc.
Компилятор vala может быть запущен на любой платформе, однако сборки под windows не являются оффициальными и не поддерживаются проектом GNOME.
Подключение файлов происходит не через #include, как в C, а с помощью указания ВСЕХ файлов для компиляции в качестве аргументов для компилятора. Библиотеки же подключаются через ‘—pkg library’ в качестве аргумента
Элементы синтаксиса:
Комментарий до конца строки | // |
---|---|
Комментарии, которые могут быть вложенными | /* */ /** **/ |
Регистрозависимость | true |
Регулярное выражение идентификатора переменной | [_a-zA-Z][_a-zA-Z0-9]* |
Регулярное выражение идентификатора функции | [_a-zA-Z][_a-zA-Z0-9]* |
Присваивание значения переменной | <varname> = <value> |
Объявление переменной | <vartype> <varname> или <vartype>[] <varname> |
Объявление переменной с присваиванием значения | <vartype> <varname> = <value> |
Группировка выражений | ( ... ) |
Блок | { ... } |
Равенство | == |
Неравенство | != |
Сравнение | <, >, <=, >= |
Определение функции | <returns> <name>(<args>){ <body> } |
Бесконечный цикл | while(true){ <body> } |
Ссылки:
Примеры:
Hello, World!:
Пример для версий Vala 0.30Класс необязательно держать в файле с таким же названием. В файле может находиться сразу несколько классов.
Во всей программе не может находиться больше одного метода с тем или иным названием.
Для запуска метода main() через ООП, необходимо унаследовать главный класс от класса GLib.Object
Класс не может называться “main”
//Как в С
void main(){
stdout.printf("Hello, world!\n");
}
//То же через ООП и с возможностями Vala
class ClassMain : GLib.Object {
void main(){
print("Hello, world!\n")
}
}
Числа Фибоначчи:
Пример для версий Vala 0.30void fibonacci(){
long output = 1;
while(true){
print(@"$output \n");
output += output;
}
}
Комментарии
]]>blog comments powered by Disqus
]]>