[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Meanness
From: |
Thomas Lord |
Subject: |
Re: Meanness |
Date: |
Sat, 26 Jul 2008 10:49:05 -0700 |
User-agent: |
Thunderbird 1.5.0.5 (X11/20060808) |
David Kastrup wrote:
Improving "Emacs on Windows" is not
the same as improving Emacs because Emacs is targeted as a component of
the GNU system. Supporting Emacs on Windows is at best orthogonal to
that goal.
I dunno about that (about "at best orthogonal to that goal").
Emacs is supposed to be a *component*, I agree.
As a component, one requirement is that it have excellent "fit"
(aka "coupling") with other parts of a GNU system. Making
Emacs work really well on today's GNU/Linux systems is
probably the best way to force improvements to its coupling.
However:
As a *component*, especially one of such central, low-level importance,
Emacs should also have excellent "orthogonality and self-containment"
(aka "cohesion"). It should fit well with a larger GNU system but
it should, internally, be flexible, self-contained, based on good
abstractions,
etc. It should fit GNU but it shouldn't be overly "intertwingled" with
GNU.
The best way to force improvements to cohesion is by "porting" and using
the component in comparable but substantially different environments.
Windows is such. There aren't a lot of others to pick from. That so
many, including many who certainly do support free software can benefit
from Emacs on Windows is just icing on the cake.
Two simple examples: fonts and colors. If the abstractions at the Emacs
lisp level for fonts and colors are agnostic with respect to GNU vs. Windows
and are effective on both, *that improves the quality of the Emacs component
on GNU systems* by shaking out any needless intertwingling with X11
abstractions. That, in turn, makes it easier in the future (if need or
desire
be) to try some other window system besides X11 on GNU. It's easier
because programs like Emacs are already very clean *components*.
Don't get me wrong. Maintaining the Windows port *poorly* can do
at least as much harm as good -- turning Emacs into a tangle of
new #ifdefs, turning Emacs lisp into a language that works differently
on different platforms, leading to *two* build systems instead of one, etc.
Doing it well, though, should improve emacs *on GNU* in ways that
almost no other plausible activity can do.
-t
- Re: Meanness, (continued)
- Re: Meanness, Alan Mackenzie, 2008/07/26
- Re: Meanness, Eli Zaretskii, 2008/07/26
- Re: Meanness, Juanma Barranquero, 2008/07/26
- Re: Meanness, David Kastrup, 2008/07/26
- Re: Meanness, Juanma Barranquero, 2008/07/26
- Re: Meanness, David Kastrup, 2008/07/26
- Re: Meanness, Eli Zaretskii, 2008/07/26
- Re: Meanness, Juanma Barranquero, 2008/07/26
- Re: Meanness, Eli Zaretskii, 2008/07/26
- Re: Meanness,
Thomas Lord <=
- Re: Meanness, David Kastrup, 2008/07/26
- Re: Meanness, Eli Zaretskii, 2008/07/26
- Re: Meanness, David Kastrup, 2008/07/26
- Re: Meanness, David Kastrup, 2008/07/26
- Re: Meanness, Eli Zaretskii, 2008/07/26
- Re: Meanness, Óscar Fuentes, 2008/07/26
- Re: Meanness, David Kastrup, 2008/07/26
- Re: Meanness, Óscar Fuentes, 2008/07/26
- Re: Meanness, Richard M Stallman, 2008/07/27
- Re: Meanness, Alfred M. Szmidt, 2008/07/26