WhizzML Reference Manual

4 Standard procedures

This chapter provides an exhaustive description of WhizzML’s standard library procedures. For each one we give first its signature and return type, as in this template:

(proc-name obj1 obj2) \(\rightarrow \) return-type

Optional arguments are enclosed in square brackets:

(proc-name obj1 [obj2]) \(\rightarrow \) return-type

When a procedure can take an arbitrary number of arguments (possibly after some required ones), we denote it by means of an ellipsis. For instance, a procedure taking one or more arguments is denoted as:

(proc-name obj1 ...) \(\rightarrow \) return-type

The name of the arguments in the template reflects their accepted types, using one of the following prefixes:

  • obj for any type.

  • str for a string value.

  • num for a numeric value.

  • int for an integer.

  • bool for a boolean value.

  • list for an arbitrary list.

  • map for an arbitrary map.

  • proc for a procedure.

  • res for a resource identifier.