title: Why doesn't java.util.Optional implement Iterable?
body: <p>Why doesn't Java 8's <code>Optional</code> implement <code>Iterable</code>?</p>
  
  <p>I assume it's a deliberate language choice but I'm wondering why. Scala's <code>Option</code> and Haskell's <code>Maybe</code> implement traversal methods analogous to <code>Iterable</code>.  FWIW, Java 9 will implement <code>Optional.stream()</code> (<a href="https://bugs.openjdk.java.net/browse/JDK-8050820" rel="noreferrer">JDK-8050820</a>).</p>