I did not realize this, but apparently Julia does not perform multiple dispatch on keyword arguments? Is that (still) true?
If so then I suppose I need to specify this result_type as a normal argument, rather than a kwarg. Otherwise it thinks the return type is Any, because result_type could be anything.