4 ms·
I'm fascinated by Vala, can anyone talk about how it's used in elementary and if it's a huge productivity benefit? I really think Vala and its ecosystem should
by le-mark 10y ago
I'm fascinated by Vala, can anyone talk about how it's used in elementary and if it's a huge productivity benefit? I really think Vala and its ecosystem should get more attention!
- oblio 10y agoVala seems interesting but at this point in time I wish that Vala, much like Gtk, wasn't ever necessary. Both were created due to licensing concerns (Vala -> C#/Mono, Gtk -> Qt).
- infodroid 10y agoVala wasn't created due to licensing concerns but rather because it could provide a high-level language for Gtk+ applications that was at the same time safer and as performant as C. This is because at that time writing Gtk+ applications in C required lots of boilerplate, was extremely error-prone, and had not attracted as many contributors to GNOME. There were C# (Mono) bindings available for Gtk+ long before Vala was invented and even a few GNOME applications using them, but C# Gtk+ apps didn't take off. I doubt anybody that chose Vala would have preferred to write their programs in C#. Because even if licensing concerns were not an issue, the performance of Mono was not up to par. Also, installing a Mono app pulled in huge dependencies, which gave it a reputation for bloat.
- Longhanks 10y agoComparing Vala to C# isn't fair. Vala is transpiled to C, then compiled to machine code, therefore has source compatibility with C and uses automatic reference counting, while C# is compiled to byte code, needs wrappers around C and uses garbage collection. They both are high level languages, but definitly with different goals.
- carussell 10y agoWhy should this matter to someone interacting with Vala as a programmer the language? These are implementation details of the runtime. Vala predates the new plans laid out over the last ~18 months, but at this point, shouldn't Vala be a research branch of C#? Seems like this kind of approach would serve as a multiplier for the benefits Vala is trying to bring to the world, from both sides.
- bsznjyewgd 10y ago"shouldn't Vala be a research branch of C#?" Vala is a nicer shinier layer for programming with GObject in C. I don't really understand what it has to do with C#? Do you mean just the syntactic influence? Keep in mind, lots of vocal people hated Mono, not just because of some vague looming threat of possible patent action, but because they disliked the memory heavy and slow startup nature of the runtime (see: Tomboy).
- carussell 10y ago1. Start with C# 2. Create research fork 3. Change it just enough until it can do what you're trying to get out of Vala right now (including whatever sweeping changes you want from the runtime by targeting GObject, so that it exhibits the static properties Vala wants here) Result: GNU/Gnome/Vala benefits from it, and the C#/.Net folks can benefit from it, if ever that research makes its way upstream. Which in turn brings another round of benefits to Vala's users and maintainers. My overall point is that symbiosis is nice. There's strength in numbers.
- pjmlp 10y ago> C# is compiled to byte code Mono supports AOT compilation to native code, as well as .NET Core. Languages and implementation aren't the same thing.