> Then why isn't it done more often?
Because it tends to require a lot of thought and effort along totally separate engineering pathways than most of the actual functional coding. Good UI design is not easy, and the skills to do it don't directly overlap with good coding skills. It's hard.
> I suspect part of the reason is that most gui frameworks are not really designed for making dense economical interfaces.
Don't blame the tooling for a broad failing of many developers. It's because constructing a genuinely dense and economical interface for most apps requires considerable time and effort, and frankly, most developers are crap at understanding how users other than themselves use applications. Those that aren't crap at it tend to have worked in large teams with dedicated UX people to help drag them away from their preconceptions.
But TUI's are more likely to have dense, economical, keyboard driven interfaces. Part of that may be the target audience, but I also think TUI Frameworks make it easier to make good keyboard navigation and interactions than most GUI frameworks.