www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Norwich 2018-11-07

reply Russel Winder <russel winder.org.uk> writes:
Hi,

I am doing a presentation looking at DVB, GTK+, GStreamer, C, C++, gtkmm, D=
,
GtkD, GStreamerD, Rust, gtk-rs, and gstreamer-rs in Norwich 2018-11-07. Any=
one
who wants to come and heckle about ditching D and switching to Rust is most
welcome.

 https://www.meetup.com/Norfolk-Developers-NorDev/events/252504253/

--=20
Russel.
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk
Oct 15 2018
parent reply Gerald <gerald.b.nunn gmail.com> writes:
On Tuesday, 16 October 2018 at 03:42:13 UTC, Russel Winder wrote:
 Hi,

 I am doing a presentation looking at DVB, GTK+, GStreamer, C, 
 C++, gtkmm, D, GtkD, GStreamerD, Rust, gtk-rs, and gstreamer-rs 
 in Norwich 2018-11-07. Anyone who wants to come and heckle 
 about ditching D and switching to Rust is most welcome.

  
 https://www.meetup.com/Norfolk-Developers-NorDev/events/252504253/
Wish I could see this one, it would be very interesting to hear your thoughts on C++ vs D vs Rust in terms of working with GTK.
Oct 16 2018
next sibling parent reply Russel Winder <russel winder.org.uk> writes:
On Tue, 2018-10-16 at 16:31 +0000, Gerald via Digitalmars-d wrote:
[=E2=80=A6]
 Wish I could see this one, it would be very interesting to hear=20
 your thoughts on C++ vs D vs Rust in terms of working with GTK.
I do not know if the sessions are recorded. C++ and gtkmm sort of work but using C++ always seems to involve more pain than any project is worth. Also gstreamermm isn't as nice as it should be. = A core problem seems to be that gtkmm and gstreamermm are hand coded bindings not generated from GIR files. D + GtkD (inc GStreamerD) is really quite nice. The biggest downside is the documentation presenting all the C examples not D ones, and the lack of non= - trivial examples of use. The biggest problem is really not enough different applications, and the need for more effort on the documentation and example= s. Rust + gtk-rs + gstreamer-rs is it seems the chosen future for GTK and GStreamer in their bid to not have to use C. Using it is really quite nice.= D and Rust are very different, both have pluses and minuses,but int he end choosing either seems fine. That Rust is the chosen tool for gstreamer-rs i= s a big choice decider. There is still a documentation and examples problem analogous to the GtkD one, but it seems more people are using this combinat= ion and the changes and improvements are happening, and quite quickly.=20 Possibly the single biggest D / Rust decider is that the gtk-rs people hav= e created a futures/channels/executor system to make working with an event lo= op in a mult-threaded context wonderfully easy and straightforward. The way of achieving the goal in C++/gtkmm is byzantine, and they way it is done in D/GtkD is old-fashioned and very low-level. I have a couple of D/GtkD projects which I'll still go with, but anything involving GStreamer has to be in Rust. If I do any new GTK projects they will likely be in Rust =E2=80=93 but ther= e is an off chance they will be in D. What can definitely be said is that no way will I= do them in C++, and C just isn't even an option on the table.=20 --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Dr Russel Winder t: +44 20 7585 2200 41 Buckmaster Road m: +44 7770 465 077 London SW11 1EN, UK w: www.russel.org.uk
Oct 17 2018
parent reply bachmeier <no spam.net> writes:
On Wednesday, 17 October 2018 at 08:35:09 UTC, Russel Winder 
wrote:

 D + GtkD (inc GStreamerD) is really quite nice. The biggest 
 downside is the documentation presenting all the C examples not 
 D ones, and the lack of non- trivial examples of use. The 
 biggest problem is really not enough different applications, 
 and the need for more effort on the documentation and examples.
I can definitely see that. I wanted to write a GUI program some time ago and looked at GtkD. It wasn't easy to see where to start with GtkD, and I eventually ended up running a local web server and creating the GUI in the browser. This is a good example of the non-technical things holding D back, largely because of the small community.
Oct 17 2018
parent Chris <wendlec tcd.ie> writes:
On Wednesday, 17 October 2018 at 13:15:44 UTC, bachmeier wrote:

 I can definitely see that. I wanted to write a GUI program some 
 time ago and looked at GtkD. It wasn't easy to see where to 
 start with GtkD, and I eventually ended up running a local web 
 server and creating the GUI in the browser. This is a good 
 example of the non-technical things holding D back, largely 
 because of the small community.
Same here. I once started a GUI program using JavaFX + D (JNI) and then switched to GtkD + Glade. I could find my way around (with some difficulty), reading the docs / examples in C and translating them to GtkD in my head. It worked, but I always had the feeling of "Is that best practice?". When I re-opened the project after 2 years or so, I just couldn't be bothered to go through all that again. I just used my JavaFX code again and extended the app in no time. It also made me realize a lot of things about D and its "small community". Something is rotten in the state of D... PS No, I won't write GtkD docs myself (may the Universe forgive me!), because by the eternal DIY logic I would have had to implement D for ARM, write GtkD docs and whatnot...instead of using D to actually write programs.
Oct 19 2018
prev sibling parent Russel Winder <russel winder.org.uk> writes:
A PS to the bit on D vs Rust:

The Rust plugin to CLion is managed by JetBrains and has resource assigned,
the D plugin to CLion is a pure volunteer effort. The Rust development
experience in CLion is really rather good. The D development experience in
CLion is there, but clearly a WIP.

I mention CLion only here since that is the platform with GDB support,Intel=
liJ IDEA will never have that.=20

--=20
Russel.
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk
Oct 17 2018