public static interface Func.B<𝓐,𝓑,𝓒> extends Lazy<Func.B<𝓐,𝓑,𝓒>>, frege.run.Kind.U<Func.B<𝓐,𝓑,?>,𝓒>, frege.run.Kind.B<Func.B<𝓐,?,?>,𝓑,𝓒>, frege.run.Kind.T<Func.B<?,?,?>,𝓐,𝓑,𝓒>
Func.B<𝓐,𝓑,𝓒> call()
LazyCompute the value if it is needed.
boolean isShared()
LazyTell if this is shared.
Data and functions whose Lazy.call() method returns this as well
as simple boxes that just hold a value ready to be supplied and Thunks
are considered shared.
But a bare lambda expression is assumed to be in need of sharing. For example:
() -> 42