> On Apr 9, 2018, at 9:17 AM, Xueming Shen <xueming.s...@oracle.com> wrote: > > > Paul, > > I don't recall any particular reason why we did Predicate<String> > asPredicate() instead > of Predicate<CharSequence> asPredicate() back 1.8? mutability? >
Hmm… me neither i would like to think it was not an oversight :-) Mutability should not be an issue *locally* for the predicate implementation since it captures no mutable state. I suspect we erred on the side of immutability in general, so the predicate would be safe to use if there were any concurrent operation going on. I believe we could revisit this decision (as a separate issue) and a change to Predicate<CharSequence> would be both source and binary compatible. However, i would be inclined to leave things as they are and stick to the overall immutability story. Paul.