Important note: all examples follow aTbRef naming conventions.
Functions should not use names reserved for built-in operators. Names are case-sensitive. Function names should begin with a letter, and may contain letters, digits, or the underscore character, i.e. A-Z, a-z, 0-9 or _ (but not a hyphen!).
Functions must not share names with attributes or erroneous outcomes will occur.
The convention here in aTbRef is to use the CamelCase naming as for attributes with a lowercase 'f' prefix.
Note that parentheses are always used regardless of whether the function has input arguments—that being a difference from action code operators in general where trailing parentheses may often be omitted if that are no input arguments The naming of arguments is discussed separately, here.
Function arguments are user-named an have no specified limitations but are most sensibly named using letters only (in Latin or other supported scripts).
Next: Defining a function