Calling SOUL $functions

From m204wiki
Revision as of 19:02, 20 April 2018 by JAL (talk | contribs) (add category)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Many of the SOUL $functions can be invoked using a CALL statement instead of assigning the function result to a %variable. For example:

%L = $LISTNEW $LISTADD(%L, 'Once upon a midnight dreary') $LISTADD(%L, 'As I pondered weak and weary') CALL $LIST_PRINT(%L)

You can CALL such $functions and still test for their return code, if necessary. For example:

CALL $LIST_PRINT(%L) IF $LIST_PRINT(%L) THEN ...

"Callability" is an optional approach; it does not replace %variable assignment. The callable $functions are indicated as such on their function page. Typically they are $functions that do more than simply return a value, and the value they return is primarily an indicator of whether the function completed successfully. $ListCnt, for example, is a (non-callable) $function because the function's purpose is to return a list count to the SOUL program.