Hi all,

         I found the LRUCache that Groovy is using is not efficient enough because it is based on Collections.synchronizeMap, the LRUCache is used by some important classes(e.g. ProxyGenerator, Closure), so it can impact the performance somehow.

         I propose to replace the implementation with Caffeine(https://github.com/ben-manes/caffeine), which is a high performance caching library for Java 8 and licensed under APL2.

        Any thoughts?