I like this more and more:) P. 2011/1/20 Hendrik Tews <t...@os.inf.tu-dresden.de>
> David Aspinall <david.aspin...@ed.ac.uk> writes: > > Instead of what you suggested, could we add an additional > option to p-s-ro that would give you what you want? > > I only thought about a coq-specific solution that leaves the > other proof assistants untouched. Thinking about it, the feature > might also be interesting for other provers. > > I would like to treat the locked material in the active scripting > buffer and those in ancestors in different ways. I prefer the > 'retract setting for the active buffer. However, for ancestors I > would prefer being asked to choose one of the following: > > 1. Make scripting in ancestor ready. This is for the case that I > want to continue with scripting in the ancestor. Proof General > should retract up to the point where I can start scripting in > the ancestor without being another question asked. For coq > this means to completely retract the current active scripting > buffer. > > 2. Make editing in ancestor possible. This is for the case that I > only want to edit the ancestor and continue afterwards with > scripting in the current active buffer. Moreover, I want to > maintain consistency of my buffers and the prove assistant. > For coq this means that the current scripting buffer must > retract up to the appropriate Require command. When I change > my mind and start scripting in the ancestor, then I am asked > again, whether I would like to change the current scripting > buffer. > > 3. Permit editing in the locked ancestor. This is for the case > that I want to edit the ancestor without changing my current > state in the active buffer. Thereby I accept the inconsistency > between the buffer content and prover. For coq this means that > only the span in the ancestor must be changed to read/write. > When I switch to a different ancestor I want to have a new > choice. > > For coq there is usually only a tiny difference between option 1 > and 2, because Require commands are usually at the beginning of > the file. Therefore, I would be satisfied with a choice between 2 > and 3 with the following optimisation for option 2: Proof General > must retract at least up to the Require that caused ancestor to > be locked. If there are only comments and Require commands above > this point then the current scripting should be retracted > completely. This way I can immediately start scripting in the > ancestor. If I instead go back to the (old) active buffer, > asserting those needlessly undone Require's is very fast. > > Alternatively a choice between 1 and 3 would be fine, if there is > the following change for coq: If there is substantial material > above the Require that caused ancestor to be locked, then Proof > General should only retract up to this Require, but not the > material before it. > > So in summary, I would like to see the following changes: > > 1. an additional option 'ask for proof-strict-read-only, which > asks whether to retract or to permit modifications in the > locked region. > > 2. splitting proof-strict-read-only into two variables, where one > applies to the active buffer and the other applies to all > other buffers. > > > > Bye, > > Hendrik > _______________________________________________ > ProofGeneral-devel mailing list > ProofGeneral-devel@inf.ed.ac.uk > http://lists.inf.ed.ac.uk/mailman/listinfo/proofgeneral-devel >
_______________________________________________ ProofGeneral-devel mailing list ProofGeneral-devel@inf.ed.ac.uk http://lists.inf.ed.ac.uk/mailman/listinfo/proofgeneral-devel