a # 1 60 R ' z#fexp x;i;n;t ' a # a,[1] ' z#t#0,(1_n#1Yx#float x)Y1+i#0 ' a # a,[1] ' x#0,1Ux ' a # a,[1] 'loop:z#z add t#nU(t mul x)div i#i+1 ' a # a,[1] ' $(V/t^=0)/loop ' a # a,[1] ' z#n,1Uz ' a # a,[1] ' $0 ' a # a,[1] '"fexp - multiprecision floating point exponential function ' a # a,[1] '"from ''the apl handbook of techniques'' copyright 1978, ibm. ' a # a,[1] '"-returns *x as a multiprecision floating point number. ' a # a,[1] '"-x may be scalar or multiprecision floating point, mp ' a # a,[1] '" integer being a case of floating point. ' a # a,[1] '"-see: Gadd Gfadd ' a # a,[1] '"-the precision of z is chosen to be the same as that of x. ' a # a,[1] '" use Galprec to increase precision. ' a # a,[1] '"-uses: Gfloat Gadd Gmul Gdiv ' Lfx a