Function is a subroutine/block of code that takes one or more parameter as input and returns zero or more output parameters.
Functional options a paradigm in Go
- Lets you write code that can grow over time
- Provide meaningful configuration parameters
- Options implemented as a function set the state of that option