RE: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-23 Thread Page, Bill
On Thursday, June 23, 2005 2:35 AM William Sit wrote: > Bill Page wrote: >> 2-d editing might be possible if we can use mathML. In that case >> it is possible to select displayed 2-d sub-expressions, modify them >> with a few keystrokes (e.g. by typing the corresponding linear 1-d >> sub-expressi

Re: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-23 Thread Bob McElrath
William Sit [EMAIL PROTECTED] wrote: > > > As I commented above, it is *not* Axiom's job to decide for me > > > what needs recomputing and what does not. > > > > I disagree. To paraphrase what Bob wrote several emails earlier: > > "Why should it be necessary for me to do something complex > > like

RE: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-23 Thread Page, Bill
Bob, On Thursday, June 23, 2005 2:41 PM you wrote: >Let me understand this better. > > (1) -> f(n)==(free k; k:=k+1; n+k); > Type: Void > (2) -> f(1) > Loading /usr/lib/axiom-20050201/algebra/UPMP.o for package > UnivariatePolynomialMultiplicationPackag

Re: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-23 Thread Bob McElrath
Let me understand this better. (1) -> f(n)==(free k; k:=k+1; n+k); Type: Void (2) -> f(1) Loading /usr/lib/axiom-20050201/algebra/UPMP.o for package UnivariatePolynomialMultiplicationPackage Compiling function f with t

RE: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-23 Thread Page, Bill
On Thursday, June 23, 2005 7:29 AM Ralf Hemmecke wrote: > Axiom also allows to do something like that... > What should the line (6) f(n) return after a user modified > line (5) to n:=3? The answer is (6) 6 Type: PositiveInteger The way to know for sure

Re: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-23 Thread Ralf Hemmecke
Axiom also allows to do something like that... What should the line (6) f(n) return after a user modified line (5) to n:=3? Will f(n) return 6 or 7? And what did the user expect? Ralf (1) -> k:=1 (1) 1 Type: PositiveInteger (2) -> f(n)

Re: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-23 Thread Bob McElrath
Andrey G. Grozin [EMAIL PROTECTED] wrote: > I disagree. Only the user can decide *which* consistent state [s]he wants. > Suppose there is a code fragment > n:=1 > x:=f(n) > n:=2 > y:=f(n) > Do you consider the state of Axiom after it inconsistent? I don't. This is > an imperative language, after a

Re: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-23 Thread William Sit
"Page, Bill" wrote: > Of course in this very simple example there is no significant > difference. But if line (3) happened to involve a very lengthy > calculation, it would be greatly to our advantage that we can > simply restore the value that is consistent with what is now > displayed on the p

Re: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-22 Thread William Sit
Bill: This is Part III. History, and Lazy Re-evaluation > >> Should this be a front-end browser function or a back-end Axiom > >> function. For example a function in Axiom might be able to return > >> the list of input history numbers of those commands that need to > >> be re-executed. > > > > Th

Re: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-22 Thread William Sit
Bill: To avoid really long messages and also to focus on issues separately, I'll answer yours in several less long ones. This is Part I: hyperdoc evaluations "Page, Bill" wrote: > [information on lazy-evaluation, delayed-evaluation, lazy-re-evaluation snipped] Many thanks for a quick e

Re: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-22 Thread William Sit
Bill: This is Part IV: History, 2D editing > [comments on using )history snipped] > > > What is desirable in the interpreter interface, is the ability to > > edit previous input lines in a 2D way. Mathematica allows it and > > makes it very easy to do quick exploratory computations during the

Re: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-22 Thread William Sit
Bill: This is Part II. Re-evaluation (focusing on what needs to be recomputed) and bad 2D editing in Maple > Re-evaluation is a little different. It involves a > series of operations (transactions) which have already altered the > state of the program, i.e. a series of updates. Like this: > >

RE: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-22 Thread Page, Bill
On Thursday, June 23, 2005 12:51 AM I wrote: > ... > So Axiom only has to do the following: > > (1') -> n:=3 > >(1) 3 > Type: PositiveInteger > (2') -> x:=f(n) > >(2) f(3) > Type: Expression Integer > (3'

RE: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-22 Thread Page, Bill
On Wednesday, June 22, 2005 11:55 PM Andrey G. Grozin wrote: > ... > Only the user can decide *which* consistent state [s]he wants. > Suppose there is a code fragment: > > (1) n:=1 > (2) x:=f(n) > (3) n:=2 > (4) y:=f(n) > > Do you consider the state of Axiom after it inconsistent?

RE: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-22 Thread Andrey G. Grozin
On Wed, 22 Jun 2005, Page, Bill wrote: > > This is unreasonable. The purpose to edit earlier input lines may > > also rearrange the order of execution of the lines. Only the user > > knows what order of execution is needed for his/her purpose. > I disagree. Given Axiom's history of the commands tha

Re: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-22 Thread Bob McElrath
First let me give a simple definition of lazy re-evaluation. Imagine a worksheet interface, that when read from top to bottom, is *always* consistent. In Maple and Mathematica the user must remember what he has executed, and keep much information about the kernel's state in his/her head. It is v

RE: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-22 Thread Page, Bill
William, I am sorry that this is a rather long email, but I think this is an important subject that has not yet been properly dealt with in any computer algebra system. > Bill Page wrote: >> ... both Tim Daly and William Sit assure me that the old Axiom >> Hypertex browser already implements this

Re: [Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-22 Thread William Sit
"Page, Bill" wrote: > > On Tuesday, June 21, 2005 5:05 PM Bob McElrath > > > Kai Oliver Kaminski [EMAIL PROTECTED] wrote: > >> What kind of dependency tracking would you need? Just within a > >> single page? For multiple pages? Send me use cases, tell me what > >> you need. > > > >I've been think

[Axiom-developer] Lazy re-evaluation (was: More AxiomUI)

2005-06-21 Thread Page, Bill
On Tuesday, June 21, 2005 5:05 PM Bob McElrath > Kai Oliver Kaminski [EMAIL PROTECTED] wrote: >> What kind of dependency tracking would you need? Just within a >> single page? For multiple pages? Send me use cases, tell me what >> you need. > >I've been thinking about this a lot lately. Although