From: Richard Stallman <rms@gnu.org>
Cc: monnier+gnu/emacs@rum.cs.yale.edu, emacs-devel@gnu.org
Subject: Re: last try (was: while-no-input)
Date: Tue, 05 Nov 2002 23:50:23 -0500 [thread overview]
Message-ID: <E189I91-000580-00@fencepost.gnu.org> (raw)
In-Reply-To: <5xadkoriww.fsf@kfs2.cua.dk> (storm@cua.dk)
However, the bad thing about this whole argument is that, as Stefan
has clearly pointed out (without Richard actually arguing against
that), using throw/catch _DOES_NOT_WORK_ for the specific problem that
while-no-input is supposed to solve.
It seemed to me that it would work. Let's see.
The problem is that we need while-no-input to be able to encapsulate
_UNMODIFIED_ code (such as ange-ftp and tramp) so that user input
transparently "interrupts" (or quits) that code.
Input should cause a nonlocal exit. Signals and throw are both
nonlocal exits.
Obviously, the code we need to encapsulate must already have been
written to intercept the "quit" signal to be able to properly clean-up
network connections etc. due to a keyboard-quit.
The proper way to do this is with unwind-protect, and that handles
both signals and throw the same way.
In contrast, using throw/catch instead of Stefan's `annotated' quit
signal _DOES_NOT_WORK_
You say this as if it were observed fact, but the reason you give
since the code we really want to encapsulate,
such as ange-ftp and tramp, is not written to expect a non-local exit
due to non-quit events!
is a theoretical supposition. Have you tried it?
If the code was written properly, it should not care which kind of
nonlocal exit is used.
- either show us (in detail) how throw/catch can be used to achieve
the described goals without having to modify ange-ftp and tramp (and
every other package that may install file name handlers),
There is no evidence they need modification, only speculation.
And if it does need modification, the code probably was not
written in the recommended way, and the modification is probably
a good idea anyway.
next prev parent reply other threads:[~2002-11-06 4:50 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-10-01 21:19 while-no-input Stefan Monnier
2002-10-02 19:24 ` while-no-input Richard Stallman
2002-10-02 21:43 ` while-no-input Stefan Monnier
2002-10-03 13:28 ` while-no-input Richard Stallman
2002-10-03 15:53 ` while-no-input Stefan Monnier
2002-10-03 22:44 ` while-no-input Kim F. Storm
2002-10-03 22:33 ` while-no-input Stefan Monnier
2002-10-04 15:46 ` while-no-input Richard Stallman
2002-10-04 15:59 ` while-no-input Stefan Monnier
2002-10-05 16:33 ` while-no-input Richard Stallman
2002-10-24 0:06 ` while-no-input Kim F. Storm
2002-10-24 7:20 ` while-no-input Stefan Monnier
2002-10-24 10:24 ` while-no-input Kim F. Storm
2002-10-25 5:35 ` while-no-input Richard Stallman
2002-10-25 9:19 ` while-no-input Kim F. Storm
2002-10-26 20:15 ` while-no-input Richard Stallman
2002-10-25 13:44 ` while-no-input Stefan Monnier
2002-10-26 20:13 ` while-no-input Richard Stallman
2002-10-29 19:45 ` while-no-input Stefan Monnier
2002-10-31 17:25 ` while-no-input Richard Stallman
2002-10-31 18:03 ` while-no-input Stefan Monnier
2002-11-02 3:32 ` while-no-input Richard Stallman
2002-11-02 4:07 ` last try (was: while-no-input) Stefan Monnier
2002-11-03 1:04 ` Kim F. Storm
2002-11-04 12:01 ` Richard Stallman
2002-11-03 13:57 ` Richard Stallman
2002-11-04 14:55 ` Stefan Monnier
2002-11-04 23:53 ` Kim F. Storm
2002-11-06 4:50 ` Richard Stallman [this message]
2002-11-06 9:45 ` Kim F. Storm
2002-11-06 17:51 ` last try Kai Großjohann
2002-11-07 15:09 ` Richard Stallman
2002-11-07 15:07 ` last try (was: while-no-input) Richard Stallman
2002-10-05 22:43 ` while-no-input Kim F. Storm
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=E189I91-000580-00@fencepost.gnu.org \
--to=rms@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=monnier+gnu/emacs@rum.cs.yale.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.