## 1315 Reputation

18 years, 85 days

## Arrow operator....

Maple

Is there a difference between scoping rules for regular procedures and for arrow operators?

## Differences in versions....

Maple

I've posted  a code for a procedure, but it seems it does not execute with other versions of Maple the way it does with my version (5.4). Here is the link. I am curious to identify within the procedure code the cause of this divergence. Note: in 5.4 the code is preceded with readlib(eliminate).

## Sphere plotting....

Maple

Consider a surface of the unit sphere about the origin, intersecting the volume of the cube [-a..a,-a..a,-a..a] 0<a<1.  What is the best Maple method to plot this surface with a direct mapping, that is without use of implicit plotting over a volume or rejecting grid points?

## Error, too many levels of recursion...

Maple V

In Maple V, Release 4 (1996):

 T:=table():i:=1:N:=5000;for i from i to N  do   T[i]:=T[i+1]:   T[i+1]:=1;   eval(T[1]);od:print(i);for i from i to N  do   T[i]:=T[i+1]:   T[i+1]:=1;   eval(T[1]);od:print(i);

N := 5000
Error, too many levels of recursion
3607
5001

Can You explain this occurence, as well as the following one:

In Maple V, Release 4 (1996):

 T:=table():i:=1:N:=5000;for i from i to N  do  T[i]:=T[i+1]:  eval(T[1]);od:print(i); for i from i to N  do  T[i]:=T[i+1]:  eval(T[1]);od:print(i);;

gives:

N := 5000
Error, too many levels of recursion
3607
Error, too many levels of recursion
3607

How does one control allowance for recursion depth?

## What is the expected correct outcome of ...

Maple V

In Maple V, Release 4 (1996):

 _EnvX:=0; b:=0; proc() global b; print(_EnvX, b); assign('_EnvX=1, b=1'); print(_EnvX, b); end();_EnvX:=0: b:=0: proc() global b; print(_EnvX, b); _EnvX:=1; b:=1; print(_EnvX, b); end();;

gives:
0, 0
0, 1