For example slabs of aluminium have standard sizes
I would guess there are at least 50 different standards available for alu plates. But the difference to the computer world is, you can take any of that plates, drill a hole and mount stuff.
building materials have well defined specifications
With an emphasis on specification_s_. Sometimes it's troublesome to keep up with the changes (or complete overhauls).
So why is that? Why hasn't someone stepped up and even try and create a universal operating system API? Is it because the computer business is still a "child" in some way, compared to other industries?
Computers are still in it's childhood, i would say, too. I would say, if you create such unified API now, you would delimit the functionalty to the intersection of all hardware that is now availbale. If everybody would develop on this base, it would lead to restricted (and slow) software. (I'm no programmer, so i mighty be wrong here.) But i think we already have a big abstraction level in software nowadays. Think of Java or Python. Nobody has to write everything in assembler. I think things have to iron out themselves in the computer bussines. I read today about the computer simulation of the construction of the roof from the munich Olypmic stadium. The result of that calculations is on 600.000 punched cards. That was only 25 years ago. Now think of what long way metallurgy has gone in our history. So i think it is too early for hat. Most people even don't know, what they want from computers. Cheers, Fabian