Использование языков, отличных от C - это как использование
нестандартных возможностей: они создают трудности для пользователей.
Даже если GCC поддерживает другие языки, пользователи могут посчитать
неудобным устанавливать компилятор для этого языка только для того,
чтобы построить Вашу программу. Поэтому, пожалуйста, пишите на C.
Существует три исключения из этого правила:
Допустимо использовать специальный язык, если Ваша программа
содержит интерпретатор этого языка. Так, не является проблемой то, что
GNU Emacs содержит код, написанный на Emacs Lisp, поскольку Emacs
поставляется с интерпретатором Lisp.
Допустимо использовать другой язык в инструменте, специально
предназначенном для использования с этим языком. Это допустимо,
поскольку пользователям, желающие построить соответствующий
инструмент, все равно приходится так или иначе иметь соответствующий
язык установленным.
Если приложение не представляется интересной широкому кругу
людей, то по видимому это не важно, что приложение недостаточно удобно
устанавливать.