I’ve never been able to understand this argument about knowing what parameters a function expects. In all my years of programming, if I need to understand what a function or API does, I have to read the documentation. The function signature alone cannot give me enough information.

In addition to knowing the parameters’ types, I also need to know their semantics. I need to know what range of values they take, and what range of values the function returns. I will never be able to remember all of this information, which means the function signature alone will never be adequate.

This was true when I programmed in FORTRAN, C, Java, and Go. Static typing just didn’t help me that much.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store