Optional -> OptionalResult
mark at talios.com
Wed Jun 5 03:32:09 PDT 2013
I don't want to nitpick, but Map<Option<List<Foo>>> isn't even a valid type for Map<K,V>, the least your have would be Map<K,Option<List<Foo>>, IMHO this would actually be valid in the case where you need to disambiguate an empty list, from NO list.
However, if Map had a method that returned an Optional<V> if the value from absent from the map, say Map#find, Map#getOptional or Map#getResult you could train developers into not putting Optionals directly in the map to start with.
String name = map.getResult("firstName").or("");
reads quite well.
Jed Wesley-Smith wrote:
> Map<Option<List<Foo>>> is clearly a straw-man. It does not make any sense
> to have a Map that has an optional key,
More information about the lambda-dev