Yes, because GTK2 is so difficult to upgrade to new versions, whereas Qt4 to Qt5 usually only involved replacing a few identifiers (cannot speak to Qt6 since I don't do Qt anymore). That's why distros need to drag GTK2 along even though we are already at GTK4.
I work on the IUP fork, where I have and support the Qt driver, which works with both Qt5 and Qt6, and I only need a couple of checks to make it work on both. I often check if I broke the Qt5 build; nope, all good there, hard to break. For GTK3 and GTK4, those must be separate drivers; there's no way you can handle that with a couple of checks. Everything is different. That was possible to some extent and works with GTK2/GTK3 (single driver), but there are so many checks and workarounds there. Qt is so nice to work with.
Yeah let's start on a specific version that they overhauled the API since computers are getting new hardware features, god forbid a different DPI. And use that as a leverage point against a library that kept their API quite stable for the last 20 years!
Especially when comparing Qt against a library who couldn't keep its shit together for 5 years and is infamous for breaking all sorts of API and removing features.
> since computers are getting new hardware features
It's not possible to move forwards fast anywhere.
> and removing features
Yeah, this is indeed very unfortunate. They claim the GTK core team is about 2 devs, so tiny that we're lucky the development goes further at all. Hard to understand considering Red Hat became part of IBM.
Actually, variations on M-expressions have been created many times in the Lisp world. (Look what you can do with macros!) So far, none of them has caught on. The latest attempt for Scheme is SRFI-266, which creates a very nice infix expression sublanguage. If I were working on a team, I would encourage them to use this, but I don't know if it has enough traction to become widespread.
It's a common mistake to think that the syntax of Lisps are a problem. People solving the supposed problem then discover it wasn't something that needed to be solved.
Yes, but that's not a dichotomy. Languages like Java have function declare what exceptions they throw, and the caller must either catch it or also declare that it throws it. Gets cumbersome quickly, but I believe it's for the best to encode exceptions at the type system.
Mozilla later added them after the concept became popular thanks to Firefox. Mozilla and Firefox browsers coexisted for quite a while and Firefox was the lite version of Mozilla that didn't include E-mail client and other such features that Mozilla did.
Xfce is way too minimal to be great. An great DE must be written mostly in JavaScript and hoard gigabytes of memory in order to render a single window.
If I understand the target of your snark, Gnome shell on my machine uses 172MB of RAM, if I sum all other gnome-related stuff (gdm-wayland-session, gjs, gnome-session-service, etc), it's 200MB.
yeah, i have a couple older machines and tried xfce and it wasn't really worth it memory wise, sure xfce is probably lighter but it's easily less than 100 meg difference
Ok, but did you also run it for a while and compare how snappy or laggy the different DEs are? Because with xfc my old T440s Thinkpad from 2013 is still perfectly fine for browsing the web, or watching movies on the HD projector, without sacrificing too many modern interface conveniences.
I can't say the same for Gnome or KDE, and that's no slight against either (I happily use the latter on my more recent work laptop).
Having said that VSCode runs perfectly fine on the T440s too, so Electron and JavaScript aren't the fundamental reason those DEs are too demanding to use.
xfce and gnome are by far my most used desktops and i probably would put effort into using xfce more if it supported wayland etc but i guess i like to tinker with newer stuff
to me the only reason to use xfce would be if i wanted to use a lightweight desktop app on a borderline useless computer, cause once you start trying to load websites you're going to blow through so much memory that desktop environments are irrelevant
Currently gnome-shell is taking 135MB of ram, with other gdm/gnome related background services ranging in 700KB-3.2MB each to like 20MB together.
And it's as snappy as my sway config I log into depending on the needs.
I just spammed virtual desktop changes, opening Files, browsing, and it's as snappy as it is in sway.
I think gnome is getting a lot of unfair performance criticism online as it looks like something that would be slow.
Maybe it was slow back in the starting gnome3 days.
Maybe there are some heavy differences in how distros package it? (arch btw)
... though I will say that from my experience it's the KDE that's the slow one. I don't have it installed currently on this machine but had in the past and have it on my steam deck(which is stronger then this laptop).
It feels sluggish and I have this bouncing cursor wait animation in my head right now just thinking about it.
reply