4 ms·
It has practical value, let say you have something that caches the result of a lambda record Cache<T, U>(Function<T, U> function) { U get(T value) { ...
by _old_dude_ 4y ago
It has practical value, let say you have something that caches the result of a lambda
record Cache<T, U>(Function<T, U> function) {
U get(T value) { ... }
}
you can use it that way
var cache = new Cache<Integer, Integer>(v -> v + 1);
var result = cache.get(3);
with that settings, how do you specify a lambda which is recursive ? and how can you cache the intermediary steps if you can change the signature of get() ?
- wyufro 4y agoIn languages with closures it would be easy to set a variable to the lambda while that same variable is also captured by the lambda. In fact, this seems to happen once in a while in Go, since closures are always lambdas.