The Robustness Principle and Type Annotations

This is one of those things that seems obvious, but in my experience is frequently overlooked. I&rsquo;ve had versions of this conversation with several coworkers over the years, so I figured it was worth writing down.&#xA;The idea is that when annotating functions and methods, parameters should accept the widest type that the function or method will work correctly with, and return values should…