/* Demo of argument passing by Key words, in this way arbitrary arguments and default options may be specified. The names of arguments and the default values are available for inspection by the user as the TRANSLATE_KEYARG property of the function. */ IF GET('SHAREM,'VERSION)=FALSE THEN LOADFILE(AUTOLO,FASL,DSK,SHAREM)$ DEF_KEYARG(BAR(FOOP,MAXI=33,TIME=4.4), ['FOOP=FOOP,'MAXI=MAXI,'TIME=TIME])$ /* In the argument specification VARIABLE = DEFAULT_VALUE indicates a variable which can be specified in a call to the function by VARIABLE = USERS_VALUE. An atom is the same thing as VARIABLE = FALSE. When the call to the function is parsed an atom indicator is the same thing as VARIABLE=TRUE. */ BAR(MAXI=100000,FOOP); BAR(); /* mispell an argument on purpose: */ ERRCATCH(BAR(MAXI=10,TIMEM=33));