Hi all, let me catch this notebook refactoring to ask for something that just came to my mind.
Let's assume you have any kind of design or analysis process flow, one great thing I'd like to have is the chance to define some input variables to be equal to a value that, whenever is updated, all the following calculations involving that same input variable are repeated. I'll try to explain better with a concrete example. At the beginning of the worksheet I could write in a cell something like: a,b = live_input([RR, CC]) and I get two input boxes like : a = [input box] b = [input box] These two variables, a and b, have a defined type (specified as argument of that "live_input" function), and a special attribute "live" (or whatever else you like), implying that the following cells have to be re-evaluated whenever the values of a and b are updated IF they (the cells) contain calculations anyhow referred to a or b. So, three cells later I have: c = a + b; c And whenever I update a or b, the evaluation of that cell is repeated and c gets updated accordingly. This also implies that c inherits the "live" attribute, so that any subsequent calculation involving "c" in the following cells is updated (re-evaluated) as well. In this way, you can imagine any kind of flow, whose input can be specified at the beginning of the worksheet, and you can immediately see the effects of changing some inputs, by just updating those boxes, and without having to manually evaluate the right cells. I think this is a piece of automation that should be pretty easily handable by the computer, and that could greatly improve the user experience. This kind of behaviour is the default in MathCad, which is very useful for this kind of flows. In that case, they have two ways of defining inputs: local definition, which affects only the subsequent calculations, and global definition, which affects all the calculations of the worksheet (also the one that comes before the global variable definition). I'll be glad to see your comments, I hope you can catch the usefulness of this (if any) :P Thanks, and regards Maurizio PS: feel free to ask me for many more insights, if I've not been clear enough --~--~---------~--~----~------------~-------~--~----~ To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---