all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Uday S Reddy <uDOTsDOTreddy@cs.bham.ac.uk>
To: help-gnu-emacs@gnu.org
Subject: Re: line-move-visual
Date: Sun, 13 Jun 2010 11:22:11 +0100	[thread overview]
Message-ID: <hv2bgj$2k7$1@north.jnrs.ja.net> (raw)
In-Reply-To: <87pqzvd7yx.fsf@rapttech.com.au>

On 6/13/2010 2:41 AM, Tim X wrote:

> Change is not the issue. Change can be positive and is necessary. The
> issue is managing that change. Any attempt to enforce a static
> unchanging environment will fail.

You are demolishing a strawman.  None of us ever said that change is 
unnecessary.  The thought that was in my mind when I wrote the previous message 
is better expressed as follows:

In the OS & network protocols world /where Mark Crispin comes from/ things can 
never change essentially.

So, Mark has every right to blow up when things have changed essentially. 
Emacs devs needed that lesson and, judging from Stefan's last post, I think 
they continue to need it.  Do you disagree?  (Don't be too focused on surface 
niceties and etiquette and all that.  Different people have different ways of 
expressing themselves.  The substance is what matters in the end.)

The reason that things can never change in the OS & network protocols world is 
that all the services interface to other systems and services.  So, if you 
change one thing, however inconsequential it might seem, you can end up 
breaking everything.  Somebody once told me that, if you want to change one 
line of code in the kernel of an on-board computer system, you have to produce 
thousands of pages of documentation analyzing how it will affect everything 
else on the aircraft.  It is so hard to do it that it is almost never done.

In the Emacs world, it is easy to think that we are delivering services to the 
human user, who is clever enough to figure things out.  Emacs is a /text 
editor/ after all.  So, change is ok.  But the problem is that Emacs is not 
just a text editor any more.  Unbeknownst to the developers, or perhaps even 
known to them in some instances, it is being used as a critical system 
component in other applications or services.  Emacs has certainly earned the 
right to be such a component.  It is some 30-40 years old.  Its core is rock 
solid.  Who has ever had a file corrupted by Emacs?  (On the other hand, I have 
had files corrupted by file servers sold by even reputable companies.)  We use 
Emacs for email in VM, which I regard as mission-critical, because all hell can 
break loose if a mail folder gets corrupted or somebody can't read their email. 
  We regularly use Emacs to develop code with all kinds additional 
functionality from editing modes and interfaces to code repositories.  If 
something goes wrong there, other developed software can break, with untold 
consequences.  I am dying to figure out what application Mark Crispin is 
putting Emacs to that makes it so hard for him to accommodate the 
line-move-visual change.  So, changes that can potentially break things are 
*not* ok.  We don't have to be as diligent as the on-board kernel hackers, but 
we certainly have to be a lot more careful than we seem to be at the moment. 
Emacs devs have to grow up into this real world.

Changing the meaning of next-line has consequences far beyond what the Emacs 
devs have been able to grasp.  I have mentioned previously that I found three 
calls to `next-line' in VM.  They were not in VM core, in third party 
contributions, but try telling that to somebody whose mail folder gets 
corrupted!  Emacs devs might say one should never have used `next-line' in 
elisp code, but that is not really good enough, is it?  Emacs manual never said 
one *must not* use next-line in elisp code.  It only said that there are better 
ways of doing it.  So, an elisp programmer cannot be faulted for using 
`next-line'.

(As an aside, Microsoft used to say that the problems faced by the users with 
Windows weren't their fault but rather those of third party device drivers. 
Microsoft had hoisted complicated protocols on the device driver writers, who 
couldn't manage them properly.  Microsoft has now developed sophisticated 
driver verification tools - some of the best in the field - to verify that the 
device drivers satisfy the protocols.  Good for them!  And good for the users!)

Imagine what I have to say in the next release notes of VM: "Emacs 23 has 
introduced an incompatible change to the meaning of `next-line' which can cause 
folder corruption.  This release of VM is the first safe version of VM for use 
with Emacs 23".  This doesn't stop other users still using older versions of VM 
from facing folder corruption.  Nor will it stop some downstream distribution 
from packaging an old version of VM with the later version of Emacs.  Is that 
the kind of situation we want to be in?

Stefan says, perhaps half-jokingly, that he never uses Emacs while being root. 
  Does RMS think the same?  Do all the trustees of FSF accept that Emacs is 
unfit to be used while being root?  What other Gnu software is similarly unfit 
to be used as root?  Mark Crispin's criticism has to be taken seriously, even 
if it comes with a heavy dose of vitriole, because he is a top-level systems 
programmer who knows better.

When you say that this change has been around for a year and no complaints were 
raised, you are not being clear about how software changes are propagated.  It 
takes years for changes to go through the pipeline of downstream distributions 
and even longer for users to upgrade their systems.  Smart users who want to 
play safe are always careful to let the dust settle before upgrading.  Our 
local sys admins haven't even installed Emacs 23.1 yet on our departmental 
machines.  That will probably happen during this summer.  If I was a normal 
user, rather than a developer, I would have probably taken an additional year 
or so to make the switch.  So, these late complaints are the most important 
ones.  They come from the more serious and conservative users.  Emacs devs are 
going to have to face the heat for quite a while to come.

Mark Crispin is not satisfied with Stefan's response.  Neither am I, to tell 
you the truth.  When says, "Given the reactions we've seen since Emacs-23.1 was 
released, I don't regret the decision", he is indicating that he is happy to 
play to the gallery, and quite an uninformed gallery at that.  When I asked "do 
you want C-n to move by logical line or visual line in the logical line mode", 
the gallery has been silent.  If this is the measure of support needed to 
introduce incompatible changes in Emacs, then Emacs does seem to be in trouble!

Cheers,
Uday






  reply	other threads:[~2010-06-13 10:22 UTC|newest]

Thread overview: 174+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <alpine.OSX.2.00.1006031053170.77397@hsinghsing.panda.com>
     [not found] ` <hu925r$1b$1@north.jnrs.ja.net>
     [not found]   ` <alpine.OSX.2.00.1006031431510.77397@hsinghsing.panda.com>
2010-06-04  7:59     ` line-move-visual Uday S Reddy
     [not found]       ` <87pr07qjio.fsf@thinkpad.tsdh.de>
2010-06-04 11:24         ` line-move-visual Uday S Reddy
2010-06-04 12:49           ` line-move-visual Tassilo Horn
2010-06-09 19:51             ` line-move-visual Joseph Brenner
2010-06-09 20:22               ` line-move-visual Brendan Halpin
2010-06-10  1:23               ` line-move-visual Stefan Monnier
     [not found]         ` <hualdf$eln$1@north.jnrs.ja.net>
2010-06-04 13:00           ` line-move-visual Tassilo Horn
2010-06-04 14:51             ` line-move-visual Stefan Monnier
2010-06-04 20:53               ` line-move-visual Tassilo Horn
2010-06-09 19:42               ` proposed keyboard-macro to record to elisp (was Re: line-move-visual) Joseph Brenner
2010-06-09 22:42                 ` LanX
     [not found]             ` <871vcmhq79.fsf@wivenhoe.ul.ie>
     [not found]               ` <hub2ss$is4$1@north.jnrs.ja.net>
2010-06-04 14:45                 ` line-move-visual Brendan Halpin
2010-06-04 17:49               ` line-move-visual Xah Lee
2010-06-04 18:18                 ` line-move-visual Mark Crispin
2010-06-04 19:19                   ` line-move-visual Xah Lee
     [not found]                     ` <alpine.OSX.2.00.1006041829210.77397@hsinghsing.panda.com>
     [not found]                       ` <089883ee-0a63-4cb4-a0ec-d2fe4e71cc03@y18g2000prn.googlegroups.com>
2010-06-06  9:53                         ` line-move-visual Uday S Reddy
2010-06-06  9:39                           ` line-move-visual David Kastrup
2010-06-07  8:39                             ` line-move-visual Tim X
2010-06-10 10:12                               ` line-move-visual Uday S Reddy
2010-06-10 13:43                                 ` line-move-visual Stefan Monnier
2010-06-10 15:17                                   ` line-move-visual Uday S Reddy
2010-06-10 19:53                                     ` line-move-visual Stefan Monnier
2010-06-10 15:44                                   ` line-move-visual despen
2010-06-10 22:02                                   ` line-move-visual Tassilo Horn
2010-06-10 23:56                                     ` line-move-visual Uday S Reddy
2010-06-10 22:48                                   ` line-move-visual Evans Winner
     [not found]                                     ` <slrni2ja96.6pq.nospam-abuse@powdermilk.math.berkeley.edu>
2010-06-29 11:09                                       ` HOWTO: Cowtow to old farts Xah Lee
2010-06-10 16:57                                 ` line-move-visual Mark Crispin
2010-06-10 18:38                                   ` line-move-visual Uday S Reddy
2010-06-11 23:56                                     ` line-move-visual Mark Crispin
2010-06-12  0:17                                       ` line-move-visual Wojciech Meyer
2010-06-13 17:23                                         ` line-move-visual Mark Crispin
2010-06-13 20:56                                           ` line-move-visual Alan Mackenzie
2010-06-14  0:42                                             ` line-move-visual Jim Diamond
2010-06-14 10:49                                             ` line-move-visual Uday S Reddy
2010-06-14 17:16                                               ` line-move-visual Alan Mackenzie
2010-06-14 17:34                                                 ` line-move-visual Uday S Reddy
2010-06-15  9:26                                               ` line-move-visual Tim X
2010-06-15 13:49                                                 ` line-move-visual Stefan Monnier
     [not found]                                                   ` <87sk4n3ocs.fsf@rapttech.com.au>
2010-06-16 14:43                                                     ` line-move-visual Stefan Monnier
     [not found]                                             ` <m2k4q18od5.fsf@softwarematters.org>
     [not found]                                               ` <jwvaaqxbcca.fsf-monnier+gnu.emacs.help@gnu.org>
2010-06-15  6:54                                                 ` line-move-visual Pascal J. Bourguignon
2010-06-15  8:42                                                   ` line-move-visual Uday S Reddy
2010-06-15  9:30                                                     ` line-move-visual David Kastrup
2010-06-15  9:38                                                     ` line-move-visual Tim X
2010-06-15 13:45                                                     ` line-move-visual Stefan Monnier
2010-06-15 13:57                                                       ` line-move-visual David Kastrup
     [not found]                                                         ` <jwvbpbb6oyk.fsf-monnier+gnu.emacs.help@gnu.org>
2010-06-16 18:04                                                           ` line-move-visual David Kastrup
     [not found]                                                       ` <hv8gvf$98o$1@north.jnrs.ja.net>
     [not found]                                                         ` <hv8iog$313e$1@colin2.muc.de>
2010-06-15 19:37                                                           ` line-move-visual Leo
     [not found]                                                             ` <871vc8dpga.fsf@imladris.arda>
2010-06-16 12:37                                                               ` Emacs language Leo
2010-06-17  8:00                                                                 ` Teemu Likonen
2010-06-15 21:04                                                           ` line-move-visual Uday S Reddy
2010-06-16 15:33                                                             ` line-move-visual Alan Mackenzie
2010-06-17  8:51                                                               ` line-move-visual Uday S Reddy
2010-06-16 14:33                                                         ` line-move-visual Stefan Monnier
     [not found]                                                           ` <db13ae67-9d9a-4556-9a7c-8f86de63011f@b4g2000pra.googlegroups.com>
2010-07-19 22:41                                                             ` minor mode on/off/toggle with t/nil question Stefan Monnier
2010-06-15 16:51                                                     ` line-move-visual Alan Mackenzie
2010-06-16 12:43                                                       ` line-move-visual David Kastrup
2010-06-15 19:17                                                     ` line-move-visual Xah Lee
2010-06-16 14:49                                                       ` espresso-mode (was: line-move-visual) Stefan Monnier
     [not found]                                                     ` <4C17FE36.30102@thadlabs.com>
2010-06-15 22:45                                                       ` line-move-visual Xah Lee
2010-06-15 23:31                                                         ` line-move-visual Thad Floryan
2010-06-16  3:30                                                           ` line-move-visual Evans Winner
2010-06-16 16:14                                                             ` line-move-visual Xah Lee
2010-06-16 23:23                                                           ` line-move-visual Chris F.A. Johnson
     [not found]                                                           ` <b1e84c4a-e74e-4ace-9b0f-a00b370eb61d@q39g2000prh.googlegroups.com>
2010-06-16 23:45                                                             ` Keyboard Hardware's Influence on Keyboard Shortcut Design Xah Lee
2010-06-16 14:52                                                         ` line-move-visual Stefan Monnier
     [not found]                                                           ` <87r5k6sqg2.fsf@unm.edu>
2010-06-17  2:25                                                             ` line-move-visual Stefan Monnier
2010-06-17  3:51                                                               ` line-move-visual Chris F.A. Johnson
2010-06-17  9:03                                                             ` line-move-visual Uday S Reddy
2010-06-20 18:42                                                               ` line-move-visual B. T. Raven
2010-06-20 17:08                                                 ` line-move-visual B. T. Raven
2010-06-12  4:18                                       ` line-move-visual Tim X
2010-06-12  4:37                                         ` line-move-visual Evans Winner
2010-06-12  8:30                                           ` line-move-visual David Kastrup
2010-06-12  8:40                                             ` line-move-visual Evans Winner
2010-06-12  9:30                                             ` line-move-visual Uday S Reddy
2010-06-12 12:30                                               ` line-move-visual Tim X
2010-06-12 20:09                                           ` line-move-visual Joseph Brenner
2010-06-13  1:41                                             ` line-move-visual Tim X
2010-06-13 10:22                                               ` Uday S Reddy [this message]
2010-06-13 10:51                                                 ` line-move-visual David Kastrup
2010-06-13 11:32                                                   ` line-move-visual Uday S Reddy
2010-06-14  0:46                                                 ` line-move-visual Tim X
     [not found]                                                   ` <hv4nkd$quq$1@north.jnrs.ja.net>
2010-06-15  9:20                                                     ` line-move-visual Tim X
2010-06-15 11:29                                                       ` line-move-visual Uday S Reddy
2010-06-16  9:29                                                         ` line-move-visual Tim X
2010-06-14  4:48                                                 ` line-move-visual Tim X
     [not found]                                                 ` <m2iq5nw4pj.fsf@gmail.com>
     [not found]                                                   ` <hv2htd$4li$1@north.jnrs.ja.net>
     [not found]                                                     ` <m239wravxb.fsf@gmail.com>
2010-06-16  2:11                                                       ` line-move-visual Joseph Brenner
2010-06-16  6:46                                                         ` line-move-visual Helmut Eller
2010-06-13 10:36                                             ` line-move-visual David Kastrup
2010-06-16  2:19                                               ` line-move-visual Joseph Brenner
     [not found]                                         ` <huvsd5$8pm$1@north.jnrs.ja.net>
2010-06-12 12:25                                           ` line-move-visual Tim X
2010-06-12 20:17                                             ` line-move-visual Joseph Brenner
2010-06-10 19:57                                   ` line-move-visual Stefan Monnier
2010-06-13 12:46                                     ` line-move-visual Uday S Reddy
     [not found]                             ` <hug5rv$6d2$1@north.jnrs.ja.net>
2010-06-06 15:21                               ` line-move-visual Tassilo Horn
2010-06-07  8:19                                 ` line-move-visual Uday S Reddy
     [not found]                                   ` <m2fx0z46wj.fsf@gmail.com>
2010-06-07 16:20                                     ` line-move-visual Stefan Monnier
2010-06-06 15:43                               ` line-move-visual Alain Ketterlin
     [not found]                                 ` <87wrucccl3.fsf_-_@marauder.physik.uni-ulm.de>
2010-06-07  6:18                                   ` Wrong use of format=flowed antidote Uday S Reddy
2010-06-07 21:30                                 ` line-move-visual Joost Kremers
2010-06-06 18:17                               ` line-move-visual Mark Crispin
     [not found]                                 ` <4C0C466E.3000803@thadlabs.com>
2010-06-07  2:53                                   ` line-move-visual Mark Crispin
2010-06-07  8:46                               ` line-move-visual Tim X
2010-06-07 16:23                                 ` line-move-visual Stefan Monnier
2010-06-09 20:23                                   ` line-move-visual Joseph Brenner
2010-06-09 21:38                             ` line-move-visual Joseph Brenner
     [not found]                               ` <slrni10ga0.t64.Jim.Diamond@jdiamond-nb.acadiau.ca>
2010-06-10 16:15                                 ` line-move-visual Mark Crispin
2010-06-04 17:52       ` line-move-visual Mark Crispin
2010-06-04 18:28         ` line-move-visual David Kastrup
     [not found]           ` <alpine.OSX.2.00.1006041808540.77397@hsinghsing.panda.com>
     [not found]             ` <878w6truxc.fsf@lola.goethe.zz>
2010-06-06  2:25               ` line-move-visual Mark Crispin
     [not found]               ` <87typc9dt8.fsf@kzsu.stanford.edu>
     [not found]                 ` <alpine.OSX.2.00.1006091815150.93771@hsinghsing.panda.com>
2010-06-10  7:12                   ` line-move-visual David Kastrup
2010-06-04 21:16         ` line-move-visual Stefan Monnier
2010-06-05  1:29           ` line-move-visual Mark Crispin
2010-06-04 13:20     ` line-move-visual sable
2009-07-09 18:12 line-move-visual Johan Myréen
2009-07-10  4:26 ` line-move-visual Bastien
2009-07-10  4:43   ` line-move-visual Miles Bader
2009-07-10  5:48     ` line-move-visual Bastien
2009-07-10  6:14       ` line-move-visual Kenichi Handa
2009-07-10  6:58         ` line-move-visual Bastien
2009-07-10  8:13           ` line-move-visual Alfred M. Szmidt
2009-07-10 10:10             ` line-move-visual Bastien
2009-07-10  8:43           ` line-move-visual Scot Becker
2009-07-10  8:57             ` line-move-visual Eli Zaretskii
2009-07-10  9:04               ` line-move-visual Lennart Borgman
2009-07-10 10:32                 ` line-move-visual Bastien
2009-07-10  9:08               ` line-move-visual Scot Becker
2009-07-10  9:13               ` line-move-visual joakim
2009-07-10  9:22                 ` line-move-visual Scot Becker
2009-07-10 16:11                   ` line-move-visual Drew Adams
2009-07-10 16:22                     ` line-move-visual Lennart Borgman
2009-07-10 17:20                       ` line-move-visual Drew Adams
2009-07-10 17:40                         ` line-move-visual Drew Adams
2009-07-10  9:52                 ` line-move-visual Miles Bader
2009-07-10 16:11                   ` line-move-visual Drew Adams
2009-07-10 11:35               ` line-move-visual Stephen J. Turnbull
2009-07-10 13:38                 ` line-move-visual Eli Zaretskii
2009-07-10 16:11                   ` line-move-visual Drew Adams
2009-07-10 18:01                     ` line-move-visual Eli Zaretskii
2009-07-10 18:16                       ` line-move-visual Drew Adams
2009-07-11 19:34                   ` line-move-visual Juri Linkov
2009-07-10 13:56                 ` line-move-visual Lennart Borgman
2009-07-10 15:07                   ` line-move-visual Scot Becker
2009-07-10 20:29                     ` line-move-visual Lennart Borgman
2009-07-10 15:43               ` line-move-visual Alfred M. Szmidt
2009-07-10 15:56             ` line-move-visual Sean O'Rourke
2009-07-10  9:14           ` line-move-visual Tassilo Horn
2009-07-10  9:56             ` line-move-visual Miles Bader
2009-07-10 10:22               ` line-move-visual Scot Becker
2009-07-10 16:11                 ` line-move-visual Drew Adams
2009-07-10 10:36               ` line-move-visual Ulrich Mueller
2009-07-10 10:56                 ` line-move-visual Eli Zaretskii
2009-07-10 11:07                   ` line-move-visual Christian Faulhammer
2009-07-10 11:29                   ` line-move-visual Ulrich Mueller
2009-07-10 18:15                     ` line-move-visual Bastien
2009-07-10 20:40     ` line-move-visual Richard Stallman
2009-07-11  1:58       ` line-move-visual Stephen J. Turnbull
2009-07-11  2:29         ` line-move-visual Miles Bader
2009-07-11  2:44           ` line-move-visual Bastien
2009-07-11 18:30             ` line-move-visual Richard Stallman
2009-07-10  6:12   ` line-move-visual Stephen J. Turnbull
2009-07-10 21:19     ` line-move-visual Johan Myréen
2009-07-10 22:14       ` line-move-visual Scot Becker
2009-07-11  1:34       ` line-move-visual Miles Bader
2009-07-11  2:46       ` line-move-visual Bastien
2009-07-11  5:25         ` line-move-visual Miles Bader
2009-07-11  5:49           ` line-move-visual Kenichi Handa
2009-07-11  6:13             ` line-move-visual Miles Bader
2009-07-11  9:22           ` line-move-visual Bastien
2009-07-10  4:35 ` line-move-visual Miles Bader
2009-07-10 13:31 ` line-move-visual Chong Yidong
2009-07-11  6:42 ` line-move-visual Andrey Paramonov
2009-07-11  7:21   ` line-move-visual Teemu Likonen

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='hv2bgj$2k7$1@north.jnrs.ja.net' \
    --to=udotsdotreddy@cs.bham.ac.uk \
    --cc=help-gnu-emacs@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.