When an object calls a function in another object, information is generally passed through the calling and return parameters. The calling and return parameter specifications are defined when the function is developed. The generic syntax for a function call is as follows:
[ReturnValue := ] FunctionName ( [ Parameter1 ] [ ,Parameter2 ] ,...)
The rules for including or omitting the various optional fields are specific to the local variables that are defined for each individual function. As developers, when we design the function, we define the rules and thereby determine just how communications with the function will be handled. It is obviously important to define complete and consistent parameter passing rules prior to beginning a development project.