From: Miles Bader <miles@gnu.org>
To: "Drew Adams" <drew.adams@oracle.com>
Cc: 'Dan Nicolaescu' <dann@ics.uci.edu>, emacs-devel@gnu.org
Subject: Re: turning on minor modes from hooks
Date: Sun, 30 Aug 2009 12:58:13 +0900 [thread overview]
Message-ID: <87ocpygdgq.fsf@catnip.gol.com> (raw)
In-Reply-To: <9C22FA24EDA84F0D932AABDA29E290EF@us.oracle.com> (Drew Adams's message of "Sat, 29 Aug 2009 20:01:08 -0700")
"Drew Adams" <drew.adams@oracle.com> writes:
>> > So interactively a nil arg will toggle, but in Lisp a nil
>> > arg will turn it on? And just why is that a great idea?
>>
>> Er, because it works the command work "as expected" in all contexts,
>> instead of in just one.
>
> Er, and why would one "expect" a nil arg to work differently between Lisp and
> interactive use?
One "wouldn't", because it _won't_ work differently. The meaning of `nil'
will change (from "toggle" to "set"). The argument passed to the function
when invoked interactively is determined by the (interactive ...) form, so
the (interactive ...) form will be changed to pass `toggle' instead of
nil.
> And why would one "expect" the _particular_ behavior difference you define?
The toggling nature when invoked M-x is very natural, and ingrained;
we've also observed that people expect the "set" behavior when using a
mode as a hook.
> I already agreed that most Lisp uses are not for toggling. I don't agree that
> toggling in Lisp is so rare that it should be ignored. Especially if no real
> advantage to doing so is given.
It won't be "ignored", it will still be possible via use of `toggle' as an argument.
The advantage is more natural use (and thus fewer usage bugs).
[The rest of your email then completely ignores everything I've said
before and proceeds to ask questions already answered. Maybe you truly
didn't understand the answers and are honestly asking, but I'm sorry, I
don't have the stomach for these long drawn out and insanely verbose
arguing-for-the-sake-of-arguing threads.]
-Miles
--
"Though they may have different meanings, the cries of 'Yeeeee-haw!' and
'Allahu akbar!' are, in spirit, not actually all that different."
next prev parent reply other threads:[~2009-08-30 3:58 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-29 21:25 turning on minor modes from hooks Dan Nicolaescu
2009-08-29 23:18 ` Miles Bader
2009-08-30 0:14 ` Drew Adams
2009-08-30 2:11 ` Miles Bader
2009-08-30 3:01 ` Drew Adams
2009-08-30 3:58 ` Miles Bader [this message]
2009-08-30 3:59 ` Stefan Monnier
2009-08-30 4:00 ` Miles Bader
2009-08-31 3:33 ` Richard Stallman
2009-08-31 14:36 ` Stefan Monnier
2009-08-31 22:15 ` Miles Bader
2009-08-31 23:32 ` Stefan Monnier
2009-09-01 0:17 ` Miles Bader
2009-09-01 12:16 ` Richard Stallman
2009-09-01 16:19 ` Stefan Monnier
2009-09-01 21:20 ` Richard Stallman
2009-09-01 23:23 ` Stefan Monnier
2009-09-03 13:47 ` Richard Stallman
2009-09-04 21:23 ` Geoff Gole
2009-08-31 15:30 ` Daniel Colascione
2009-08-31 18:54 ` Tassilo Horn
2009-09-01 12:16 ` Richard Stallman
2009-08-31 23:43 ` Stefan Monnier
2009-09-01 2:07 ` Stephen J. Turnbull
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=87ocpygdgq.fsf@catnip.gol.com \
--to=miles@gnu.org \
--cc=dann@ics.uci.edu \
--cc=drew.adams@oracle.com \
--cc=emacs-devel@gnu.org \
/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.