I think the intention was to model it on type-inferencing strongly typed
systems, actually: but of course that sort of inferencing can't cross the
separate-compilation-and-language abstraction boundary between the kernel
and userspace (not to mention the privilege boundary, which is perhaps
less significant in this case).