FWIW, Gio (gioui.org) recently added support for RTL languages and complex scripts. So there's no fundamental reason immediate mode UIs can't have the nice features you're used to from retained mode UIs.
124 karma · joined April 1, 2019
> Are immediate-mode GUIs up to the task? What is driving their authors to pursue this design? Why aren't they choosing a declarative design
Immediate mode UIs make managing state much easier, and avoids callbacks for event processing. That alone is worth it in my opinion.
Disclaimer: I'm the author.
Shameless plug: If you like Go and immediate mode UIs in particular, Gio[0] runs the same Go code across desktop and mobile alike. No bridging or native code required.
If you like a more mature framework and don't mind Dart, I think Flutter is an attractive toolkit. I started Gio wanting to write a Flutter clone in Go before going for the immediate mode design.