Bo Peng wrote:
I'm trying to concentrate on very general questions
about how these two proposals work. The question, "Do you use zip or tar or
base64?" is just not worth discussing at this point. ...

Richard,

We are both tired of this discussion. My proposal is solid. I can
provide every bit of detail if you would like to know. There has been
no big issue with it except for this "cluster the dialog" one.

You repeated many times that your proposal is better, but without
solid reasons. Your proposal is still in its infancy, with only a core
idea. Whenever I ask you something specific, you would hide behind
this 'implementation detail' excuse.

How long have we been discussion this embedding idea? Two month? More?
How much time have we wasted on all these emails? Every tiny aspect of
our proposals, the pros and cons of many implementation details have
been extensively discussed. It is really time for you to sit down and
think, and pick the best implementation for your approach.

You do not have to write down any code. You simply need to figure out
how exactly you would like to open and save a file, how to insert
external files, how to update them, what file format to use, how to
bundle/unbundle, compress/uncompress etc. It may not be easy, but
should be a much better way to spend your time than emailing back and
forth here with me. If you need guidelines, the problems I have
pointed out with your approach (see the wiki) are things you can try
to avoid. I have enough patience to wait for a solid proposal, just
let me know much time you will need.

Bo,

The proposals I have made have been pitched at the level of DESIGN. I do not propose to resolve questions that are at the level of IMPLEMENTATION at this time. This is because my own approach to programming involves trying to think through design questions and then remaining as flexible as possible about how the design might be implemented. I hope this distinction is clear. That said, I am happy to admit that I do not always succeed in keeping design separate from implementation. I rely upon Andre (as well he knows) and Abdel and JMarc and Edwin and many others with a lot more experience than I have to remind me when I've gone astray and get me back into line. I'm a philosopher and logician, not a professional programmer. But I understand the importance of separating design questions from implementation questions, even if I don't always separate them. I hope you do, too.

To be more concrete: I do not see why you and I need to debate questions like whether we should use base64, or zip, or tar; or whether we should store the file mapping in session files, or the LyX file, or elsewhere. All of these could be changed at any time, for all kinds of reasons. Neither of them has anything to do with "the individual embedding debate". If you like, I can describe several different forms of my proposal, as many as there are ways of setting various implementation parameters. But 2^n grows fast, and I don't see the point.

Here's what we DO need to debate: (i) Whether we should distinguish between bundling and wrapping, as JMarc long ago urged we should; (ii) whether we should allow individual embedding or only have a switch that bundles everything. I've made my view on these matters just about as clear as I am able to make it. But let me summarize, one more time.

On the latter, I simply don't see the value of inset-by-inset bundling. Yes, I see that there are possible use cases, but I very much doubt there are actual use cases, and no user with whom I've spoken has requested the ability to bundle just one graphic file, or to leave one out. And inset-by-inset bundling has significant costs, both in terms of code complexity and effects on the UI. I would need to be given very good reasons to support its inclusion, and so far as I can see I've been given none.

On the former, I think the reasons that JMarc gave for wanting this distinction are very strong. If we do make such a distinction, for example, then we can support OSX 's "magic directories" with almost no effort. And this is only an example of the flexibility we buy ourselves. And even if we didn't have that reason, it is plain as day that bundling and wrapping are different, conceptually, and it is good programming practice not to trample it without reason.

You want to discuss these issues, let's discuss them. I won't waste my time debating other questions.

Best,
Richard

Reply via email to