CSS and HTML are both from the web but different things. It makes sense to use CSS to control the style (therefore it is named Style-Sheets) in toolkits like Gtk and Qt! While JavaScript is an interpreted language for the web but not for applications.
Yes. JavaScript can be used on the desktop, we name it usually Electron. It actually replaced Flash! It allows companies to copy their web-code to the desktop and relabeling it as application. This is cheap. The users suffer from slow applications, which require a network connection, which consume high amounts of resources (memory) and provide bad integration. This is expensive. Microsoft Teams tries currently to switch from Electron (which includes Chrome) to Chrome itself.
I'm rather happy with the GNOME-Shell. It comes with its own implementation of GJS which changes the situation. The GNOME-Shell itself suffered from memory leaks which are fixed for some years:
I'm thankful for the authors description. Replacing language A by B or B by C doesn't improve the implementation. Every implementation requires a lot work and constant care. And the comment describes how they control memory usage rather well in C/C++ with ASAN (GCC or CLANG) and Valgrind, suffered from incompatibilities between GObject and JavaScript and memory leaks within JavaScript. The implementation with JS allows for immediate manipulations of GNOME-Shell through developers but I wonder if the would prefer a native language when doing it again. At least that would reduce complexity and remove the dependency on the interpreter.
Yes. JavaScript can be used on the desktop, we name it usually Electron. It actually replaced Flash! It allows companies to copy their web-code to the desktop and relabeling it as application. This is cheap. The users suffer from slow applications, which require a network connection, which consume high amounts of resources (memory) and provide bad integration. This is expensive. Microsoft Teams tries currently to switch from Electron (which includes Chrome) to Chrome itself.
I'm rather happy with the GNOME-Shell. It comes with its own implementation of GJS which changes the situation. The GNOME-Shell itself suffered from memory leaks which are fixed for some years:
https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/64#note_...
I'm thankful for the authors description. Replacing language A by B or B by C doesn't improve the implementation. Every implementation requires a lot work and constant care. And the comment describes how they control memory usage rather well in C/C++ with ASAN (GCC or CLANG) and Valgrind, suffered from incompatibilities between GObject and JavaScript and memory leaks within JavaScript. The implementation with JS allows for immediate manipulations of GNOME-Shell through developers but I wonder if the would prefer a native language when doing it again. At least that would reduce complexity and remove the dependency on the interpreter.