On Friday, 24 April 2020 at 18:52:55 UTC, Russel Winder wrote:
On Fri, 2020-04-24 at 15:50 +0000, Phrozen via Digitalmars-d-learn wrote:

@Basile B., thanks for the suggestion. I'll try this library too.

Just a bit of confirmation: I am a fan of D and GtkD for desktop UI work.

GTK+ is just a UI framework unlike Qt (which is UI and networking, database, etc.) and is fairly straightforward to work with after the initial learning hump – which is the same between GTK+ and Qt. Qt is really C++ and Python only though many languages have bindings to QML. GTK+ has many bindings, C++, Go, Rust, and D to name just the obvious native code languages. C++ (gtkmm) and Go (gotk3) bindings are manuals ones, Rust (gtk-rs) and D (GtkD) bindings are generated from the API specification (GIR files). I believe this makes gtk-rs and GtkD far
superior to gtkmm and gotk3.

I have done a number of projects in Rust/gtk-rs and D/GtkD. Overall I prefer the code of D/GtkD over Rust/gtk-rs *but* there is much more IDE and editor support for Rust compared to D. This makes Rust code easier to write than the equivalent D code, even if that Rust code is more ugly than the equivalent D code.

So whilst I keep wanting to do D/GtkD, I keep getting pulled to Rust/gtk-rs simply because CLion (and Emacs) support for Rust is so much nicer than the D support.

I must laud Samael's efforts on the IntelliJ IDEA/CLion D support, it is magnificent, but the project needs more resource to get the CLion D plugin somewhere near as good as the Rust CLion plugin. I am sure VisualStudio fans, indeed any other IDE users, will say the same about their IDE, I am a CLion user so try to push CLion support.

Just curious, how do you handle the whole RC<RefCell<>> story in Gtk-rs?

For me it made the point that languages with tracing GC or implicit reference counting are much better solution for doing GUI programming.

Reply via email to