People have already asked the same on the mailing list ☺. The main reason is Iterable also has a re-iterable semantic, while Stream is not.
I think the main reason is that
Iterableimplies reusability, whereasStreamis something that can only be used once — more like anIterator.If
StreamextendedIterablethen existing code might be surprised when it receives anIterablethat throws anExceptionthe
second time they dofor (element : iterable).