4 ms·
As I said, parts of it were copied, but many parts of it were not. You cannot say in any reasonable sense that Gosling "Wrote GNU emacs" (but of course that is
by snogglethorpe 13y ago
As I said, parts of it were copied, but many parts of it were not. You cannot say in any reasonable sense that Gosling "Wrote GNU emacs" (but of course that is not necessary to win a copyright challenge; part is enough).
[I also spent tons of time looking at the source code for both versions at the time, and both the similarities and differences were pretty clear.]
- hga 13y agoObviously I disagree (although I don't think our disagreement is very large), I would say the truly essential parts were written by Gosling, and that RMS and company's biggest value adds were on top. Hmmm, I suppose that it might be a bit like "GNU/Linux", except the gcc etc. tool chain makes the argument for the latter stronger. Without reviewing my Finseth, what is there besides buffer management and its linked redisplay, built in commands (a lot of which were copied, like my favorite marker of backup-by-copying-while-linked, which in the '80s was to my fairly extensive knowledge unique to Gosling EMACS), keymappings and the extension language? (Half my professional work in the '80s was on many different versions of EMACS, and I believe I worked on every significant UNIX one, although only Steve Zimmerman's CCA Emacs was a real competitor to Gosling/GNU EMACS as machines got enough memory. Note when I say "worked on" I might mean nothing more than porting; today's young whippersnappers are spoiled by the Linux mono-culture and/or modern package systems :-) You say the first two "were tricky to get right" ... you've got that right, back in those days when resources were dear and performance was critical (Eight Megabytes And Constantly Swapping :-), they were in my opinion the hardest parts, especially since the superiority of the buffer gap vs. linked lines wasn't necessarily intuitive, and didn't the main file of the Gosling redisplay code have a skull and crossbones at the top? Although I'll admit to some bias since buffer management on the PDP-11 and non-VM PCs and 68000 workstations was problematic, in this case especially for a code base that started on a paging super-minicomputer (the VAX). Once you had those, building on top of them is fairly obvious, and a if not the largest part of the quality was a matter of taste, where RMS was vastly superior to Gosling, from using "standard" keymappings to a real LISP.