And this right here is a major point of contention.
The standard WIMP GUI that is taken for granted today (and that evidently DE designers have a hard time shaking off even when supposedly attempting to "break new ground" - see GNOME 3 and Unity) might have ended up being the lesser approach.
The PARC conception of a GUI (later emulated by Niklaus Wirth/ETH Zuerich's Oberon, as well as Rob Pike's 8 1/2, rio, help and acme) really had this knack for actually enforcing composability.
In present GUIs, windows are mostly dumb, isolated and unable to talk. In addition, they are very difficult (if not outright unfit) for automation. Acceptance testing frameworks like Selenium which run as headless browsers show this isn't a problem if there's a common serializable representation (HTML, DOM...), but not so for desktop GUIs.
All text on screen is modifiable, regardless of where it is. Text is executable. A lot of common scenarios where people cook up quick scripts for task automation are effectively made obsolete, given that the desktop itself is one big programming environment without the user really being told it is. Task launchers/run dialogs are no longer needed.
More recent research, like Bluebottle OS (de facto successor to Oberon?), has experimented with zoomable interfaces. These obsolete virtual desktops entirely, because you have infinite (by the colloquial definition of infinity, of course) space to work on.
It's this drive to move beyond WIMP that has motivated a lot of people toward tiling window managers. Ironically enough, they are also the most primitive and simple to create, which really says something. Still pales in comparison to the classic GUI, though.
Sounds really interesting can you point to some resources where I can read about this in greater detail?