Talk:Gosling Emacs

Explain "skull and crossbones warning"
Something should be added to explain what in the world the "skull and crossbones warning" is exactly. — Preceding unsigned comment added by 72.147.234.33 (talk • contribs) 13:30, 24 May 2007


 * See skull and crossbones (poison), as linked in the article. --EnOreg (talk) 16:49, 29 March 2011 (UTC)

I'd love to add the actual ASCII art for the skull and crossbones, but neither GNU nor the FSF will cough up source code of an appropriate vintage. Also, with regards to mg's comment to "get back to work", I can't find usenet archives that old. Anyone who can help with either of these two digital archaeology projects is more than welcome to contact me personally. Jfm3 (talk) 04:28, 31 March 2011 (UTC)


 * Recently Richard Stallman gave an interview for Slashdot where he answered some questions that were asked by Slashdot users. Here is the quote from the interview:

"The last piece of Gosmacs code that I replaced was the serial terminal scrolling optimizer, a few pages of Gosling's code which was proceeded by a comment with a skull and crossbones, meaning that it was so hard to understand that it was poison. I had to replace it, but worried that the job would be hard. I found a simpler algorithm and got it to work in a few hours, producing code that was shorter, faster, clearer, and more extensible. Then I made it use the terminal commands to insert or delete multiple lines as a single operation, which made screen updating far more efficient."


 * I think that this quote can be taken as a reliable source which proves the story about "skull-and-crossbones" comment in Gosling Emacs source code. So I added a link to this interview and updated the article. -- Artyom V. Poptsov (talk) 10:40, 8 January 2013 (UTC)
 * Yeah, that's a pretty good reference for this. But I'd love to see a non-Stallman reference if one can be found.  The article's only references are from Gosling himself and from Stallman, and the two of them battled privately and publicly about Emacs for years.  In general, I'd avoid Stallman for this article because of that, except when he's all that can be found.  But again, yeah, this is a pretty good reference.  Thanks! RossPatterson (talk) 12:13, 8 January 2013 (UTC)


 * I have a copy of the Skull and Crossbone comment here: http://donhopkins.com/home/archive/emacs/skull-and-crossbones.txt Full disclosure: I'm an Evil Software Hoarder because I worked for UniPress, so I'm forever contaminated from seeing the original proprietary code with the skull and crossbones comment. But for reference, the provenance of the identical comment I linked to is actually from the Maryland Windows source code file display.c file published in the public domain here: http://cd.textfiles.com/sourcecode/unix_c/languags/c/mw.tar, which was based on a branch of the original Gosling Emacs display.c code, modified by Chris Torek at the University of Maryland. James Gosling told Chris Torek that "I'm perfectly happy to have you remove my copyright from the version of display.c that you've heavily modified." And as it turned out, the skull and crossbones comment was taken from source code of Brian Reid's Scribe program, and is not copyrighted. So the skull and crossbone at http://donhopkins.com/home/archive/emacs/skull-and-crossbones.txt is in the clean and safe to link to. ;) https://groups.google.com/forum/#!msg/net.emacs/yXfZGeHJrNY/XGsf97m7fA0J Xardox (talk) 11:26, 12 September 2016 (UTC)

I have received a copy of Gosling Emacs from 1999, with RCS version history back to around 1986. It does have the Skull and Crossbone comment in display.c. User:larsbrinkhoff —Preceding undated comment added 19:52, 17 October 2016 (UTC)

A copy of GNU Emacs 13.8 that includes the skull and crossbone comment can found here: https://github.com/larsbrinkhoff/emacs-history/blob/sources/decuslib.com/decus/vax85b/gnuemax/emacs/src/display.c. Lars Brinkhoff (talk) 06:23, 18 August 2021 (UTC)

Citation needed
This article has so much "citation needed" that it makes it unreadable and it discouraged me to improved it! — Preceding unsigned comment added by 195.37.78.212 (talk) 12:36, 8 June 2011 (UTC)

The Display Update Code
I may give some information on the display code...

The display update code in Emacs is very efficient for what iit has been designed for but this was not Emacs!

The display update code was originally designed for an ASCII art editor and Gosling did write an article in CACM (1979 IIRC) and the reason why it is efficient for this ASCII art editor is that there are frequent cases where you need to update more than one place at once in such an editor. For a normal text editor, this display update is an overkill that does not help. A simple update mechanism that is either able to insert or remove chars at a single position is fully sufficient for a text editor. In fact, the display update code in Emacs is worse than the one used in vi.

I know this because around 1985 I wrote a display update code that is much more efficient than the one used in Emacs and in vi. My code is only able to insert or remove chars at a single position and a modify operation is emulated by a delete followed by an insert. As a result of this simple idea, my code needs a lot less CPU time and also does a faster terminal update.

My code is available in the editor ved that is part of the Schily Tools (download a recent schily-*.tar.bz2 archive) and was written without the knowledge on Emacs internals but if you compare the resultant terminal activities for an update, it may appear to be similar to what Emacs does. As I know that Stallman have been told by UNIPRESS to remove the Gosling code (note that Stallman took the UNIPRESS variant of the Emacs source and published it for money under the name GNU emacs), I wrote a mail to Gosling and asked for an explanation of his code to make sure that my code is really different with respect to all aspects of its internals. Gosling then sent me a hint to his CACM article. BTW: if you compare the Gosling Emacs and a recent GNU emacs, the display update is still similar with respect to performance and method. Schily (talk) 16:13, 6 January 2015 (UTC)

External links modified
Hello fellow Wikipedians,

I have just modified one external link on Gosling Emacs. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
 * Added archive https://web.archive.org/web/20110728022656/http://www.burlingtontelecom.net/~ashawley/gnu/emacs/ConText-Kelty.pdf to http://www.burlingtontelecom.net/~ashawley/gnu/emacs/ConText-Kelty.pdf

When you have finished reviewing my changes, you may follow the instructions on the template below to fix any issues with the URLs.

Cheers.— InternetArchiveBot  (Report bug) 14:04, 21 October 2017 (UTC)

Citation/expansion needed: "disputes with UniPress"
The first graf references "disputes with UniPress", but it's not clear who had these disputes or what they were about. More info is needed for this sentence to be clear to the uninitiated.

I wonder if anyone has access to a really early distribution
I wonder if anyone has access to the early distribution of emacs referenced here: https://github.com/ildus/bsd_indent/blob/master/README

I'm particularly looking at the version of indent that came with it. DAWillcox (talk) 16:16, 3 May 2023 (UTC)


 * I checked some early Emacs distributions here: https://github.com/larsbrinkhoff/emacs-history/, but I didn't see any indent.c or similar. Lars Brinkhoff (talk) 08:10, 8 May 2023 (UTC)
 * Thanks for looking, and no, I don't see it anywhere there, either. (There may have been an indent.c, but the source was multiple .c files in an indent directory.) I wrote original indent in 1976 at the University of Illinois. Apparently it was included in some emacs release in the 80's and from there found its way into BSD Unix releases. And from there to Linux and a bunch of other platforms. Many, many fingers have tweaked it in the ensuing decades but the underlying (rather ugly) structure is still visible. I'm trying to find a version as close to the original as possible. The earliest I've found so far is from the late 80s. It still had the original University of Illinois copyright notice along with Berkley copyrights. Sadly, later releases don't acknowledge the early history. DAWillcox (talk) 14:45, 8 May 2023 (UTC)