Аз съм C# разработчик, който случайно се натъкна на нов език за програмиране за Linux, наречен vala. Има почти същия синтаксис като C#, което е страхотно. Никога не съм бил голям фен на Mono. Това позволява на програмистите да пишат GTK+ приложения на език в стил C#. Въпросът ми е: vala компилира ли се в C?
Vala (C#-подобен език) се компилира до C?
Отговори (3)
Да, Vala се компилира директно в C. От началната страница на Vala:
valac произвежда C изходни и заглавни файлове от Vala изходни файлове, сякаш сте написали вашата библиотека или приложение директно в C. Използването на Vala библиотека от C приложение няма да изглежда по-различно от използването на всеки друг GObject базирана библиотека. Няма да има библиотека за изпълнение на vala и приложенията могат да разпространяват генерирания C код със своите tarballs, така че няма допълнителни зависимости по време на изпълнение или изграждане за потребителите.
Можете да прочетете повече за това тук (и също да получите уроци, пощенски списъци и т.н.). Това е доста интересен проект.
От Уикипедия:
Вместо да се компилира директно към асемблер или към междинен език, Vala се компилира до C, който след това се компилира със стандартния C компилатор на платформата.
Както посочиха Джон и Крис, Vala наистина се компилира до C.
Всъщност можете да видите генерирания C код, като стартирате компилатора Vala с флага -C
(или --ccode
).