Re: GNU Emacs and Xemacs Schism

Discussion in 'C Programming' started by Fren Zeee, Jun 30, 2010.

  1. Fren Zeee

    Fren Zeee Guest

    On Jun 29, 7:08 am, Xah Lee <> wrote:
    > • GNU Emacs and Xemacs Schism, by Ben Wing
    >  http://xahlee.org/emacs/gnu_emacs_xemacs_schism_Ben_Wing.html
    >
    > plain text version follows.
    >
    > --------------------------------------------------
    > GNU Emacs and Xemacs Schism, by Ben Wing
    >
    > Ben Wing, 2001?
    >
    > Many people look at the split between GNU Emacs and XEmacs and are
    > convinced that the XEmacs team is being needlessly divisive and just
    > needs to cooperate a bit with RMS, and the two versions of Emacs will
    > merge. In fact there have been six to seven major attempts at merging,
    > each running hundreds of messages long and all of them coming from the
    > XEmacs side. All have failed because they have eventually come to the
    > same conclusion, which is that RMS has no real interest in cooperation
    > at all. If you work with him, you have to do it his way — “my way or
    > the highwayâ€. Specifically:
    >
    > 1. RMS insists on having legal papers signed for every bit of code
    > that goes into GNU Emacs. RMS's lawyers have told him that every


    [snip]

    > 2. RMS does not like abstract data structures. Abstract data
    > structures are the foundation of XEmacs and most other modern
    > programming projects. In my opinion, is difficult to impossible to
    > write maintainable and expandable code without using abstract data
    > structures. In merging talks with RMS he has said we can have any
    > abstract data structures we want in a merged version but must allow
    > direct access to the implementation as well, which defeats the primary
    > purpose of having abstract data structures.


    What does he mean by ADT ? I thought any struct in C is the ADT. If
    the emacs is written in C then it has struct in it. If the lisp has a
    certain structure of dotted pairs or two cells, then it is a
    structure, ie a tree with special nodes to void.

    > 3. RMS is very unwilling to compromise when it comes to divergent
    > implementations of the same functionality, which is very common
    > between XEmacs and GNU Emacs. Rather than taking the better interface
    > on technical grounds, RMS insists that both interfaces must be
    > implemented in C at the same level (rather than implementing one in C
    > and the other on top if it), so that code that uses either interface
    > is just as fast. This means that the resulting merged Emacs would be
    > filled with a lot of very complicated code to simultaneously support
    > two divergent interfaces, and would be difficult to maintain in this
    > state.


    Can anyone explain this concept in detail ?

    "RMS insists that both interfaces must be implemented in C at the same
    level"


    > 4. RMS’s idea of compromise and cooperation is almost purely political
    > rather than technical. The XEmacs maintainers would like to have
    > issues resolved by examining them technically and deciding what makes
    > the most sense from a technical prospective. RMS however, wants to
    > proceed on a tit for tat kind of basis, which is to say, “If we
    > support this feature of yours, we also get to support this other
    > feature of mine.†The result of such a process is typically a big
    > mess, because there is no overarching design but instead a great deal
    > of incompatible things hodgepodged together.
    >


    [snip]

    I have lots of respect for RMS, the Xemacs group and I take no sides.
    These people gave a lot to the public.

    > The fact that few if any people share his principles is meaningless to
    > him.
    >
    > Ben Wing
    >
    > --------------------------------------------------
    > Notes from XahLee.org
    >
    > This article, was orginially at “http://www.666.com/xemacs/xemacs-
    > split-bens-opinion.htm†as of mid 2000, but is gone as of 2010-06-28.
    > The content is retrived from web.archive.org on 2010-06-28.
    >
    > The article is probably written in 2001. Because web.archive.org's
    > first archived content of the url is dated 2001-12.
    >
    > Ben Wing was one of the main developer of Xemacs, after Jamie W
    > Zawinski. However, Ben Wing got Repetitive Strain Injury and i think
    > he exited the programing field in early 2000s. For more detail about
    > this, see: Famous Emacs People With Hand Injuries.
    >
    > For more detail and resources on history, see Wikipedia: XEmacs. Also,
    > Richard Gabriel, the founder of Lucid Inc, wrote a book named Patterns
    > Of Software, published 1996, which accounts some XEmacs vs GNU Emacs
    > history. I wrote a review in 1998, see: Book Review: Patterns of
    > Software.
    >
    > See also:
    >
    >     * Emacs Timeline (1999, 2007), by Jamie Zawinski. jwz.org
    >     * The Lemacs/FSFmacs Schism (2000), by Jamie W Zawinski. jwz.org
    >     * XEmacs vs. GNU Emacs, edited by Stephen J Turnbull. xemacs.org
    >
    > After reading them carefully, you'll see that what's called Emacs,
    > starting with TECMAC and TMACS, are really different software with
    > different implementations, by different people, on different operating
    > systems, for about 5 or more years starting in 1976. When reading
    > about these, you need to put your mind on what computers are like at
    > those times. Typically, a monochrome text terminal, with screen size
    > of some 80 characters with 24 lines. (See: Computer terminal) The
    > typical “editor†at the time operate by modes. That is, you type the
    > command to delete a word, then another command to update the screen to
    > see the word deleted. This is where vi's operation method originated,
    > and also why these emacs editors call themselves as “real-timeâ€, and
    > “DISPLAY†editor, meaning what you typed is updated in real time and
    > in a display, a forerunner concept similar to “what you see is what
    > you get†(WYSIWYG).
    >
    > I'm guessing that Richard Stallman's GNU Emacs didn't become the main
    > emacs till mid 1980s, Then, Xemacs become widely popular and
    > competitor to GNU Emacs in the 1990s.
    >
    > All these are before my time. I started using a computer daily in
    > 1990. I started to use emacs in 1998 and quickly switched to Xemacs as
    > my choice out of practicality. See: My Experience of Emacs vs XEmacs.
    > But since mid 2000s, Xemacs has fallen due to many reasons. (it'd be
    > too much to write on why, but here's a summary of what i think: due to
    > the popularity of Internet/Web in the 1990s together with Apache,
    > Perl, Linux, and the whole Open Source and FSF movement with presses
    > from the mainstream media, Richard Stallman and his main work the GNU
    > Emacs gets the prime attention than a derivative such as Xemacs, so
    > gradually, GNU Emacs gets more developers, got unicode support,
    > largely caught up with Xemacs by early 2000s, and Xemacs, since long
    > de-coupled with a commercial sponsor, just gradually languished.)


    Xah can you give a link to the summary of why one was ahead of the
    other ?

    > It is unfortunate, since Xemacs really is ahead of emacs in many
    > technical ways. However, its semi-dead status is well relfected from
    > its website xemacs.org. Pages there haven't been updated for 5 or 10
    > years. Its current maintainer, Stephen Turnbull, is a regular
    > participant on GNU Emacs dev forum.
    >
    > Here's a comprehensive document on Multics Emacs, written by Bernard S
    > Greenberg, around the same time GNU Emacs of Richard Stallman was
    > written. Bernard Greenberg is one of the lispers at the time, who is a
    > founder of Symbolics.
    >
    > Multics Emacs: The History, Design and Implementation (1996), by
    > Bernard S Greenberg. At multicians.org.
    >
    > Another founder of Symbolics, Dan Weinreb, has also written a article
    > related to history of the time. Dan is also the author of another
    > emacs at the time, called EINE (EINE Is Not Emacs):
    >
    > Rebuttal to Stallman's Story About The Formation of Symbolics and LMI
    > (2007-11), by Dan Weinreb. At danweinreb.org
    >
    >   Xah
    > ∑http://xahlee.org/
    >
    > ☄


    Nice article. Perhaps, someone should resurrect all of Ben Wing's
    archives as a single website or a pdf or a zip since he is no longer
    around. I expanded the post to a few more groups where it might help
    others.
    Fren Zeee, Jun 30, 2010
    #1
    1. Advertising

  2. Fren Zeee

    Raymond Toy Guest

    On 6/29/10 10:08 PM, Fren Zeee wrote:
    > Nice article. Perhaps, someone should resurrect all of Ben Wing's
    > archives as a single website or a pdf or a zip since he is no longer
    > around. I expanded the post to a few more groups where it might help
    > others.


    A simple google search through xemacs archives show that he has done
    some unicode work on xemacs around the beginning of this year. He's
    still around, unless something has happened to him since then.

    Ray
    Raymond Toy, Jun 30, 2010
    #2
    1. Advertising

  3. On 30 June, 03:08, Fren Zeee <> wrote:
    > On Jun 29, 7:08 am, Xah Lee <> wrote:


    I'm not entirely sure this belongs on comp.lang.c. There's one point
    thats close to on-topic though.

    > > • GNU Emacs and Xemacs Schism, by Ben Wing
    > >  http://xahlee.org/emacs/gnu_emacs_xemacs_schism_Ben_Wing.html

    >
    > > plain text version follows.

    >
    > > --------------------------------------------------
    > > GNU Emacs and Xemacs Schism, by Ben Wing

    >
    > > Ben Wing, 2001?

    >
    > > Many people look at the split between GNU Emacs and XEmacs and are
    > > convinced that the XEmacs team is being needlessly divisive and just
    > > needs to cooperate a bit with RMS, and the two versions of Emacs will
    > > merge. In fact there have been six to seven major attempts at merging,
    > > each running hundreds of messages long and all of them coming from the
    > > XEmacs side. All have failed because they have eventually come to the
    > > same conclusion, which is that RMS has no real interest in cooperation
    > > at all. If you work with him, you have to do it his way — “my way or
    > > the highway”. Specifically:


    <snip>

    > > 2. RMS does not like abstract data structures. Abstract data
    > > structures are the foundation of XEmacs and most other modern
    > > programming projects. In my opinion, [it] is difficult to impossible to
    > > write maintainable and expandable code without using abstract data
    > > structures. In merging talks with RMS he has said we can have any
    > > abstract data structures we want in a merged version but must allow
    > > direct access to the implementation as well, which defeats the primary
    > > purpose of having abstract data structures.

    >
    > What does he mean by ADT ? I thought any struct in C is the ADT.


    Some are more abstract than others. A true ADT hides implementaion
    detail (and allows it to be changed without change rippling through
    the whole application). For instance a stack could be an array or a
    linked list. An ADT would hide this detail a er Concrete DT (CDT)
    would allow access to the underlying array or list. Calling a struct
    an ADT is rather stretching the term.

    > If
    > the emacs is written in C then it has struct in it.


    I suspect most of it is written in Lisp.


    > If the lisp has a
    > certain structure of dotted pairs or two cells, then it is a
    > structure, ie a tree with special nodes to void.


    what? A Lisp cell is a pretty abstract type. Modern hardware is
    unlikely to support it directly and there a variety of ways to
    implement it in C. But when writing (most) Lisp you don't care.


    <snip emacs wars>


    --

    We recommend, rather, that users take advantage of the extensions of
    GNU C and disregard the limitations of other compilers. Aside from
    certain supercomputers and obsolete small machines, there is less
    and less reason ever to use any other C compiler other than for
    bootstrapping GNU CC.
    (Using and Porting GNU CC)
    Nick Keighley, Jun 30, 2010
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Peter

    1 day gnu, whole life gnu?

    Peter, Jan 10, 2005, in forum: Java
    Replies:
    3
    Views:
    322
    John C. Bollinger
    Jan 10, 2005
  2. Peter
    Replies:
    17
    Views:
    587
    Chris Smith
    Jan 13, 2005
  3. Markus Elfring
    Replies:
    2
    Views:
    355
    Markus Elfring
    Feb 23, 2005
  4. Replies:
    0
    Views:
    446
  5. Fren Zeee

    Re: GNU Emacs and Xemacs Schism

    Fren Zeee, Jun 30, 2010, in forum: C Programming
    Replies:
    1
    Views:
    310
    Julian Bradfield
    Jun 30, 2010
Loading...

Share This Page