circular references in Gnumeric?


I am working on general evaluation concepts in spreadsheets at the moment
and I am wondering how circular references are treated in Gnumeric.
Gnumeric includes circular references into its concept - that means no
warning or indication is given to the user, so I suppose that Gnumeric
_does_ consider circular referencing cells being "normal cells" with a kind
of two-staged evaluation.

An experiment given here shows the behaviour I am interested in: A1 holds a
constant value (1); A2 builds the sum of A1 and itself (=A1+A2). With the
input of the formula, Gnumeric processes 2 in A2. If the value in A1 is
changed to 4, A2 becomes 10; if then subsequently A1 is changed to 1 again,
A2 becomes 12. So we have the “previous” value, that is displayed and the
“new” value that is assigned to the cell, which corresponds to the new value
in A1 building up the sum: (12 = 1+1+10, 10 = 4+4+2, 2 = 1+1+0). Aggregation
functions such as average() and sum() provide more or less (similar)
reasonable results. Trying to incorporate subtraction in A2 (=A1-A2) leads,
unexpectedly, to 0 with no re-evaluation (?) taking place though.

To me, this seems rather dangerous. So I wonder why this works, or if there
are any reasons for including circular references seamlessly into the
gnumeric  re-evaluation concept?

Thanks in advance and kindly regards,
Hodnigg Karin

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]