The guava library has it\'s own Supplier which does not extend Java 8 Supplier. Also guava provides a cache for suppliers - Suppliers#memoize.
Is there something sim
A simple wrapper for Guava 20 on Java 8:
static java.util.function.Supplier memoize(java.util.function.Supplier extends T> supplier) { return com.google.common.base.Suppliers.memoize(supplier::get)::get; }