Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!uakari.primate.wisc.edu!crdgw1!uunet!timbuk!cs.umn.edu!uc!noc.MR.NET!gacvx2.gac.edu!hhdist From: jsims@vuse.vanderbilt.edu (J. Robert Sims) Newsgroups: comp.sys.handhelds Subject: RE: The APPLY function Message-ID: <9102241648.AA24383@vuse.vanderbilt.edu> Date: 24 Feb 91 16:48:43 GMT Lines: 22 Return-path: To: handhelds@gac.edu The apply function takes a variable number of arguments, the others (COMB, %ch) don't. The syntax for apply is not 'APPLY('name', {symb...})' it's 'APPLY(name, symb1, symb2, ...)' name is still at the wrong end of the list, but the function is more logical to understand if the name is at the beginning of the list than the end. Side note: if you use 'APPLY(A,B)' where B is defined as {C D}, and evaluate it, you get a Bad Argument Type error, and { 'A' { C D } } is returned to the stack. It looks like apply is given its arguments in the same order that the command line wants them, but that apply uses something other than ->list when its arguments are taken off the stack to be passed to the main routine. I'll bet that if ->list had a command line equivalent, it would be ->list(size, A, B, ...) to form the list {A B ...} Rob jsims@vuse.vanderbilt.edu