Search Top Index
HELP FROZVAL Steven Hardy, January 78 frozval(<frozen_value_number>,<closure>) -> <argument>; This procedure (and its updater) access the arguments frozen into procedure closures. FROZVAL takes two arguments: 1) a number specifying which frozen argument (numbering from the left) is to be accessed and 2) the procedure closure. Try the following: define add3(x,y,z); x + y + z enddefine; vars add; add3(%5,6%) -> add; add3(4,5,6) => add(4) => frozval(1,add), frozval(2,add) => 10 -> frozval(1,add); add(4) => [purple] <> frozval(1,iscolour) -> frozval(1,iscolour); See also HELP *CLOSURES - on constructing closures HELP *UPDATEROF - to define the updater of a procedure HELP *PDPART - returns the procedure on which a closure is based HELP *PARTAPPLY - produces a closure of an existing procedure HELP *DATALIST - returns the components of a specified object REF *PROCEDURE - for more details on procedures and closures