>
> which contains five `tokens'. However, I tried the following line:
>
> Local Variable = 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 +
1...
>
> and PowerPro handled this without complaint.
>
>
This error is signalled if an expression requires too much space for
intermediary processing. What is intermediary? Two separate
things: space for suspended parts of the expression and space for
temporary results.
Consider this expression:
a =b + c*length(window("caption", path++prog))
PowerPro starts reading the expression. If finds b+, but (due to
priority of operators), it cannot add b+c. It has to do
multiplication first. So the addition is suspended (by pushing the
variable b and the operator + onto stacks). Keep working the same
logic, and you find that PowerPro has to suspend the multiplication,
the length, and the window function as well, until the path++prog
can be evaluated; then the suspended operators are popped off the
stack: the window function, the length function, the
multiplication, and finally the addition.
Note that
a=b+c+d+e+f+g
requires no suspensions. PowerPro can evaluate as it goes. PowerPro
will always evaluate as soon as it can do so according the the
expression's semantics.
PowerPro should be able to handle 25 simultaneous suspensions.
The other intermedicate processing limitation is temporary space for
intermediate string results. For
a = case("upper", str1 ++ str2++ str3)
PowerPro has to store the result of str1++str2 some place
temporarily. It then has to create a new temporary to store the
(longer) result of joining str3 to str1++str2.
PowerPro will re-use temporaries: for example, in the above it will
see that it does not need a new temporary for the case function,
since it will return a string of the same length.
PowerPro can stored a maximum of 8K temporary results when the
result is less that 532 bytes. For longer temporaries, PowerPro
will allocate special memory; at most ten such long-string
temporaries can be simulaneously active.
Actually, I am surprised that you surpassed these limits. Can you
post an example too complex expression? Possibly there is a problem
and then limits are not as big as I thought.
------------------------ Yahoo! Groups Sponsor --------------------~-->
$9.95 domain names from Yahoo!. Register anything.
http://us.click.yahoo.com/J8kdrA/y20IAA/yQLSAA/JV_rlB/TM
--------------------------------------------------------------------~->
Attention: PowerPro's Web site has moved: http://www.ppro.org
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/power-pro/
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/