4 ms·
GTK having this kind of scheme is why Vala was made and inspired by C# but uses GObject and all its joys, then transpiles your code to C. This is why a surpris
by giancarlostoro 1y ago
GTK having this kind of scheme is why Vala was made and inspired by C# but uses GObject and all its joys, then transpiles your code to C.
This is why a surprising number of GTK applications (more than I realized) are coded in Vala. I lowkey wish they had just adopted D instead of building up Vala. D is basically compiled C# to me in its own ways.
- pjmlp 1y agoThe problem is that D community keeps pivoting all the time, so now you get compiled C# with the breath of .NET ecosystem and IDE tooling, and is almost impossible to sell D, even if still has the edge in a few language features.
- giancarlostoro 1y agoI'm not talking about merging .NET into D I'm talking about instead of building Vala which transpiles to C, the creators of Vala could have just made a D library instead. D does not need the .NET ecosystem to survive.
- pjmlp 1y agoNeither am I. D needs a usable ecosystem, the point is that since Andrei Alexandrescu's book came out, the incomplete pivots have allowed the competition to get most of D features where it had an edge back 15 years ago. Even Andrei eventually got back to C++, now working at NVidia. Native AOT or .NET Native, plus all the Midori related improvements, and everything else C# has access to, was one example, there are others from other ecosystems.
- giancarlostoro 1y agoAh I understand. Yeah, what D needs is to build up a STD lib comparable to Go’s which lets you build nearly anything OOTB without a fuzz.
- WCSTombs 1y agoThe GTK C API definitely feels like it's begging for a domain-specific language. I guess that language turned out to be Vala, and from what I could see it was a pretty nice language. My takeaway from all this is a little bit different though: I feel this whole situation ultimately some credence to the Scheme/Racket philosophy, where you can effectively make yourself a domain-specific language without ever leaving the base language. In an alternate universe, we don't choose between adopting D or inventing Vala. We can just stay in Racket.