Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> The underlying force there is the absence of one unified baseline set of APIs for writing desktop programs.

It's called the Common Desktop Environment.



Most desktop programs don't need to rely on a DE (apart from some utilities). If Emacs can run anywhere, your programs can too. GTK or QT is more than enough. For anything else, you go with components on a needed basis, and they should preferably be desktop independent.


> If Emacs can run anywhere

Any desktop program needs to be programmed against some API. In the case of Emacs, it's probably raw Xlib or a wrapper library on top of it.

The problem with that is that (a) your dependency on X11, which is obsolete and has many documented inadequacies, (b) the lack of a modern widget library and toolkit makes extra, unnecessary work for the programmer, and (c) the lack of a cohesive visual language between programs makes the experience worse for the user.

Toolkits like GTK and Qt solve all these problems. By avoiding them, you're just reinventing the wheel, poorly, every time.


Emacs has a GTK3 layer (among others) for its UI.


Emacs was there way before GTK and Qt appeared, though.


> Emacs was there way before GTK and Qt appeared, though.

So your point is that we should use older technology even when it's been surpassed by better alternatives?


I was pointing out that when we talk about reinventing the wheel, it wasn't the Emacs who was doing that, but the other guys. Whether they reinvented better or worse wheels is up to debate.


Yes if the better alternatives are worse.


nah, we all know the "real-life CDE" is called either OpenGL (see ImGui https://github.com/ocornut/imgui, egui https://github.com/emilk/egui etc) or... HTML/CSS/JS (see Electron, Tauri etc)


or ... or ... or...




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: