As a Vala developer, I would not suggest Val for a translator. In the interpreter, you will create many objects for the aster, data types, possible intermediate objects, codogen objects, etc. In Val I personally appreciated that the main overhead is the creation of objects (simple GTypeInstance, even GObject). Vala is designed to work with gobjects, but gobjects are not designed for quick placement.
So, for your project, I will still use glib / gio for cross-platform things like network, string utils, unicode, data structures, etc., because they have a clean, consistent and convenient API, but I donβt would create ast objects like gobjects / gtypeinstance. In the interpreter you need a quick selection, which is the whole point.
My personal advice: use vala if you want to create desktop applications, dbus services, gstreamer stuff or anything that affects the g * world, nothing more.
source share