> неужели Vala такой удобный язык программирования?Зависит от целей.
Например, требуется реализовать DBus клиент или сервер. На Qt для этого пишется некий специальный xml + код на диалекте плюсов, от которого слегка веет величием MFC, при сборке всё это связывается не совсем прозрачным на мой дилетантский взгляд образом. На Vala просто к классу добавляется атрибут, писанины меньше раза в два и всё в одном месте (результат транслируется в исходник на С).
Сразу отвечу на вопрос о цене.
Вот зависимости plasma-browser-integration-host, откуда удалены привязки к KDE и функциональность кроме управления медиапроигрывателем:
linux-vdso.so.1
libQt5DBus.so.5 => /usr/lib64/libQt5DBus.so.5
libQt5Widgets.so.5 => /usr/lib64/libQt5Widgets.so.5
libQt5Gui.so.5 => /usr/lib64/libQt5Gui.so.5
libQt5Core.so.5 => /usr/lib64/libQt5Core.so.5
libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/libstdc++.so.6
libm.so.6 => /lib64/libm.so.6
libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/libgcc_s.so.1
libc.so.6 => /lib64/libc.so.6
libpthread.so.0 => /lib64/libpthread.so.0
libdbus-1.so.3 => /usr/lib64/libdbus-1.so.3
libGL.so.1 => /usr/lib64/libGL.so.1
libpng16.so.16 => /usr/lib64/libpng16.so.16
libz.so.1 => /lib64/libz.so.1
libharfbuzz.so.0 => /usr/lib64/libharfbuzz.so.0
libsystemd.so.0 => /lib64/libsystemd.so.0
libdouble-conversion.so.3 => /usr/lib64/libdouble-conversion.so.3
libicui18n.so.67 => /usr/lib64/libicui18n.so.67
libicuuc.so.67 => /usr/lib64/libicuuc.so.67
libdl.so.2 => /lib64/libdl.so.2
libpcre2-16.so.0 => /usr/lib64/libpcre2-16.so.0
libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0
/lib64/ld-linux-x86-64.so.2
libGLdispatch.so.0 => /usr/lib64/libGLdispatch.so.0
libGLX.so.0 => /usr/lib64/libGLX.so.0
libfreetype.so.6 => /usr/lib64/libfreetype.so.6
libgraphite2.so.3 => /usr/lib64/libgraphite2.so.3
librt.so.1 => /lib64/librt.so.1
liblzma.so.5 => /lib64/liblzma.so.5
liblz4.so.1 => /usr/lib64/liblz4.so.1
libcap.so.2 => /lib64/libcap.so.2
libgcrypt.so.20 => /usr/lib64/libgcrypt.so.20
libicudata.so.67 => /usr/lib64/libicudata.so.67
libpcre.so.1 => /lib64/libpcre.so.1
libX11.so.6 => /usr/lib64/libX11.so.6
libbz2.so.1 => /lib64/libbz2.so.1
libgpg-error.so.0 => /usr/lib64/libgpg-error.so.0
libxcb.so.1 => /usr/lib64/libxcb.so.1
libXau.so.6 => /usr/lib64/libXau.so.6
libXdmcp.so.6 => /usr/lib64/libXdmcp.so.6
libbsd.so.0 => /usr/lib64/libbsd.so.0
Имплементация аналога на Vala:
linux-vdso.so.1
libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0
libgobject-2.0.so.0 => /usr/lib64/libgobject-2.0.so.0
libgio-2.0.so.0 => /usr/lib64/libgio-2.0.so.0
libjson-glib-1.0.so.0 => /usr/lib64/libjson-glib-1.0.so.0
libc.so.6 => /lib64/libc.so.6
libpcre.so.1 => /lib64/libpcre.so.1
libpthread.so.0 => /lib64/libpthread.so.0
libffi.so.7 => /usr/lib64/libffi.so.7
libgmodule-2.0.so.0 => /usr/lib64/libgmodule-2.0.so.0
libz.so.1 => /lib64/libz.so.1
libmount.so.1 => /lib64/libmount.so.1
libresolv.so.2 => /lib64/libresolv.so.2
/lib64/ld-linux-x86-64.so.2
libdl.so.2 => /lib64/libdl.so.2
libblkid.so.1 => /lib64/libblkid.so.1
Размер исполняемых файлов: 330Кб для Qt и 77Кб для Vala.
С другой стороны, документация по Vala не завершена.