Article 1688 of comp.sys.handhelds: Path: en.ecn.purdue.edu!pur-ee!mentor.cc.purdue.edu!purdue!tut.cis.ohio-state.edu!cs.utexas.edu!hp-sdd!hp-pcd!hpcvra!charliep From: charliep@hpcvra.CV.HP.COM (Charles Patton) Newsgroups: comp.sys.handhelds Subject: Re: Undocumented Functions (HP-48SX) Message-ID: <21580049@hpcvra.CV.HP.COM> Date: 30 Mar 90 17:19:00 GMT References: <53655@microsoft.UUCP> Organization: Hewlett-Packard Co., Corvallis, OR, USA Lines: 31 The QUOTE and APPLY functions both designed to allow the user additional control over the evaluation of arguments. The main use for the QUOTE function is to allow unevaluated names to be passed as arguments as they are in derivative, for example. If you want to build a Laplace transform function in user language it would need to use the QUOTE in the input to the function: 'Laplace(QUOTE(X^2-A*LN(X)),QUOTE(X))' The APPLY function is useful for creating lazy-evaluation functions and indefinite streams. Consider, for example, the Infinite Sum Function ISUM: << -> Summand Variable StartingValue << Summand Variable StartingValue 2 ->LIST | Summand Variable StartingValue 1 + 3 ->LIST 'ISUM' APPLY + >> >> This is a recursive definition and without the APPLY to postpone the continued evaluation, it would never return until it ran out of room. Instead we have 'ISUM(X^2,X,1)' EVAL => '1+ISUM(X^2,X,2)' '1+ISUM(X^2,X,2)' EVAL => '1+(4+ISUM(X^2,X,3))' etc. This kind of behavior is very useful for computing with infinite series and recusive solutions of ordinary differential equations. ******************************************************* ** charliep@hp-pcd.cv.hp.com (For Internet hosts)** ** hplabs!hp-pcd!charliep (For UUCP hosts) ** *******************************************************