It seems that you’re fundamentally misunderstanding what the IDL (and DIANA) are for. IDL’s design was generally for specifying datastructures, with a primary use-case for usage within compilers. DIANA was an instance of IDL which mapped to Ada83, such that it was an intermediate representation (IR). — One interesting thing about IDL is that the datastructures were defined in a manner that you could derive from an existing structure, extending it, or suppressing/constraining some element, or both.
Perhaps I wasn’t clear enough on the design I was getting at with the IDE design: imagine doing all the “compiler” (and tool) stuff completely w/o files, completely w/o text, and design all that sort of stuff as a import/export module. —That is to say, take a datastructure-first approach throughout the IDE, and backed/implemented-by database.— This immediately makes the IDE (and translators, and tools) not-dependent on things like the file-system or environment-variables, and thus makes it very portable.
Or, to state it a different way, ask: “What would this look like without text? without files?”