$a include=template_file $n$lm IMP Core Environment Standard $b2$lm Section 11: Miscellaneous $a sectno=11; pageno=1 $a indent=0 $a indent=1 $b4$v5$t0 * $t %constant %name NIL$b0 $p The predefined pointer NIL may be used to terminate linked lists of items; any pointer variable which is pointing to NIL will have all its bits clear (0) {IAY: better wording required here, but see language implications section}. $b4$v5$t0 * $t %integer %function SIZE OF ( %name X ) $p The number of storage units occupied by the given variable is returned. The unit is machine dependent but is commonly a byte. $b4$v5$t0 * $t %integer %function TYPE OF ( %name X ) $p This function returns a code which indicates the type of the object supplied as parameter. The complete list of code values which may be returned by TYPE$ OF is as follows: $b$v5$l0 0 - unknown type 1 - %integer 2 - %real 3 - %string 4 - %record 5 - %byte %integer 6 - %short %integer 7 - %long %integer 8 - %long %real 9 - %array 10 - %label $b0