From: martin rudalics <rudalics@gmx.at>
To: Nix <nix@esperi.org.uk>
Cc: Chong Yidong <cyd@gnu.org>,
Stefan Monnier <monnier@iro.umontreal.ca>,
emacs-devel@gnu.org
Subject: Re: Windows' "split status"
Date: Wed, 23 Nov 2011 15:15:19 +0100 [thread overview]
Message-ID: <4ECCFFF7.1030702@gmx.at> (raw)
In-Reply-To: <87sjlfxbg1.fsf@spindle.srvr.nix>
>> If this variable is always non-`nil', a frame's window
>> tree is a binary tree so every window but the frame's root window
>> has exactly one sibling.
>
> As a native English speaker, I'm afraid that this reads like a
> non-native-English-speaker's attempt to render
>
>> If this variable is always non-`nil', a frame's window tree is always
>> a binary tree so every window but the frame's root window has exactly
>> one sibling.
Because of the missing "always"? Then your formulation is missing yet
another "always" immediately before "exactly".
> which unfortunately has a quite different meaning.
Mixing temporal operators and quantification in prose is problematic.
But what precisely constitutes the "different meaning" here in your
opinion?
> While your
> formulation is grammatically correct, I don't think it's very meaningful
> to talk about a variable's value "always" being something.
The term "always" has very contrived semantics but it's informally often
used to say something like: If this variable is non-nil when Emacs
starts and is non-nil whenever Emacs performs an action, then for any of
Emacs' frames, that frame's window tree is a binary tree when Emacs
starts and after any action performed by Emacs. Or, if this variable is
always non-nil, then any frame's window tree is always a binary tree.
Obviously I'd prefer to say something more useful like "for all frames
invariantly holds that if this variable is non-nil when that frame is
created or a window on that frame is created or deleted, that frame's
window tree is a binary tree" but I don't like talking in terms of pre-
and post-conditions and don't know anyway how to provide the necessary
atomicity of Emacs' actions wrt to "this variable's value".
> Perhaps framing this in terms of a guarantee is clearer?
>
>> If this variable's value remains non-`nil' throughout the lifetime of
>> a frame, the frame's window tree is guaranteed to be a binary tree;
>> every window nested below the root window will have exactly one
>> sibling.
I wouldn't mind. After all, this sentence was meant as an additional
hint only, without the slightest claim for formal correctness.
martin
next prev parent reply other threads:[~2011-11-23 14:15 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-11 15:37 Windows' "split status" Chong Yidong
2011-11-11 18:37 ` martin rudalics
2011-11-12 0:36 ` Chong Yidong
2011-11-12 10:01 ` martin rudalics
2011-11-13 3:23 ` Chong Yidong
2011-11-13 10:49 ` martin rudalics
2011-11-13 16:10 ` Chong Yidong
2011-11-13 17:17 ` martin rudalics
2011-11-15 5:20 ` Chong Yidong
2011-11-15 7:25 ` martin rudalics
2011-11-15 9:39 ` Chong Yidong
2011-11-15 13:30 ` Stefan Monnier
2011-11-15 15:15 ` martin rudalics
2011-11-15 16:24 ` monnier
2012-01-10 16:26 ` martin rudalics
2011-11-23 12:36 ` Nix
2011-11-23 14:15 ` martin rudalics [this message]
2011-11-23 17:38 ` Eli Zaretskii
2011-11-23 19:21 ` martin rudalics
2011-11-23 20:14 ` Eli Zaretskii
2011-11-24 10:00 ` martin rudalics
2011-11-24 11:27 ` Eli Zaretskii
2011-11-25 10:24 ` martin rudalics
2011-11-25 11:37 ` Eli Zaretskii
2011-11-25 13:55 ` martin rudalics
2011-11-25 12:00 ` Nix
2011-11-25 12:07 ` Eli Zaretskii
2011-11-25 12:14 ` Nix
2011-11-25 13:55 ` martin rudalics
2011-11-25 13:54 ` martin rudalics
2011-11-15 15:15 ` martin rudalics
2011-11-15 18:37 ` Juri Linkov
2011-11-16 5:08 ` Chong Yidong
2011-11-16 10:11 ` martin rudalics
2011-11-16 13:34 ` Stefan Monnier
2011-11-16 17:01 ` Juri Linkov
2011-11-17 10:34 ` martin rudalics
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=4ECCFFF7.1030702@gmx.at \
--to=rudalics@gmx.at \
--cc=cyd@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=monnier@iro.umontreal.ca \
--cc=nix@esperi.org.uk \
/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.