While I have some appreciation for the fact that Scala doesn't make its `Option` type special from a syntactic standpoint--it's a sum type, like any other--I think there's something to be said for the type union with syntactic support. `optionalData?.methodOption?.method` is much more succinct than Scala's `optionalData.flatMap(_.methodOption).map(_.method)`, or `for (data <- optionalData; result <- data.methodOption) yield result.method`. Scalaz seems to provide some more concise aliases for the monadic chain, but there's still nothing I know of that gives you exactly the method access within a monad quite like `?.`.