ThrowableFunc could be made generic in the Exception it throws, this would eliminate the need for broad catch(Exception e) when you are e.g only dealing with IOExceptions (ThrowableFunc & calling method throws IOException)
public interface ThrowingFunc0<R, E extends Exception> extends Function {
R call() throws E;
}
If you think this is a good idea, we are happy to prepare a pull request