Loading collection data...
Collections are a way for you to organize kata so that you can create your own training routines. Every collection you create is public and automatically sharable with other warriors. After you have added a few kata to a collection you and others can train on the kata contained within the collection.
Get started now by creating a new collection.
You are right. My bad :(. Reason is of course that b.toSet.contains creates a function that is applied several times. .toSet is called only once.
No, it doesn't, you can check it with
.tap(println)
.This calls b.toSet for every item in a. Optimization turns against itself.