Image for post
Image for post

Function signatures are a huge part of expressing ideas and systems through code. A language (or a programmer) can empower or impede your ability flow in and out of a codebase with joy and cognitive bliss.

When languages like C first came out, function definitions looked all the same. You give a function a name and an ordered lists of arguments with their corresponding types. Every one of these arguments is required to fulfill this wonderful contract we created.

Languages remained this way for some time due to, what I believe is, the prevalence of Object Oriented Programming and Design. OOP gave software designers the ability to reduce the arguments passed back and forth via function by throwing state on our objects. So instead of passing firstName and lastName to fullName(firstName, lastName), we were able to call something like this.firstName and this.lastName










About

Kory Tegman

Senior Software Engineer.

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