Functions may be of either an intrinsic type, either an application defined opaque type. The function type is the type to which the function evaluates.
See Intrinsic Types.
See Application Defined Types.
Function names are valid C identifiers, i.e. the first character in a function
name is a letter or an underscore (
_), while the subsequent characters
may be letters, digits or underscores (
Function definitions are introduced through the
struct x1f4_function_type record.
See struct x1f4_function_type.
Implicit type conversion are performed for function arguments.
See Implicit Conversions.
Functions and variables do not share the same name space, hence it is possible to have a function having a variable name.
Two functions cannot have the same name.
Variables may be passed by value or by reference as function arguments.