Much of the existing code uses GError-style errors, and any existing C code that was made to to call Vala generated code would do the same, no biggie. It's not like we'd throw an exception from a re-written function without updating the caller code, that wouldn't even work, the compiler would have a fit about missing (GError) parameter (unlike with C++ exceptions).Yes, I understand how the "throws" are implemented in vala, but as I said,
the existing C code isn't designed to handle that.
Maybe I misunderstand your point still?
I'm volunteering. We keep saying "somebody" has to do it, and I'm proposing a way that seems the most sane/best and least time-wasting to do it, and being the "somebody" in this case (although I'm hardly a build system expert).We could compile own if we need to embeded release, otherwise using
something like https://wiki.gnome.org/Vala/Win32CrossBuildSample or
billions of other possibilities for creating cross-platform code as well as
we do now.
Sure we *can* do anything, but "somebody" has to do it and maintain it.
I guess (according to Columban's message) this is a non-issue, we can target same versions of stuff as before, and even RHEL supports recent Valac, so it should be same old (in theory at least).
[...]
Nope, I propose *new* Geany release will only work on *new* dependencies,
which are release in *new* distros, which are using *non-deprecated* APIs.
So you want the extra work of backporting bugfixes, or just forget about
older platforms?
Is that "no" because you want to focus on re-design and not getting an in principle agreement on a good language to use?I would have thought that "no" above was obvious.
Or you honestly don't think Vala is a good fit at all for new/re-written parts of Geany code?
That's the idea; choose a better language, agree it can be used, and then start working on the re-factoring/re-design stuff using it. If we get bogged down at this point with deep design discussions and stuff, instead of just agreeing on a language that volunteers (ex. me) are happy/willing[1] to use to roll-out said re-factorings/re-designs, we'll not move forward at all[2].
To be clear, tinkering with what language is used to tack more bandages on
to the current Geany design is a waste of time. Choosing a better language
to implement a better design might be worthwhile.
P.S. Sorry if I was snarky/sarcastic in the last message, it's only because I know roughly your sentiments on the subject from our previous discussions, and could insert any topic for Vala and you'd find some points to disagree about (see most/all RFCs in ML archives) :) I just get frustrated because you're generally against every idea anyone (especially me) has, and it's hard to tell if you're being genuine or just disagreeing for the sake of disagreeing, or you think I'm too stupid to understand what I'm talking about or something.
Cheers,
Matthew Brush
[1]: I'd also be willing to do in plain GObject/C but it'd be a lot more boring/long/bug-prone and would result in the exact same code as Valac would generate (or likely worse), and then you'd be pointing out about how it's too much churn, boilerplate, or how G*/C sucks, etc.
[2]: Yes, the design part is fairly independent of the language part, of course we could do it ASM if we wanted, but certain tools make things a lot easier to express/organize, especially when you can type 20 lines of clean readable Vala code instead of 200 lines of organized but boring GObject code, or 150 lines of unstructured, bug/leak-prone, hard-to-follow plain C code[3].
[3]: And yes, it is possible to write structured, non-buggy/leaky, easier to follow code in plain C, but it's a heck of a lot harder, and as shown in existing Geany code, it's easier to be less rigorous when the proper "framework" of the code isn't in place.
_______________________________________________
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel