Note that a self-contained subset of the functions described here uses only integer and string arguments and is therefore suitable to be used in situations where no complex types can be passed, e.g. when interfacing to scripting languages.