From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Fren Zeee Newsgroups: gmane.emacs.help Subject: Re: Do we need a "Stevens" book? Date: Thu, 29 Jul 2010 22:29:34 -0700 (PDT) Organization: http://groups.google.com Message-ID: References: <093d461d-5402-4226-80d5-6e3d8df2b922@j8g2000yqd.googlegroups.com> <35282104-5b51-4ba4-8745-4fae239ce0ee@q21g2000prm.googlegroups.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1291852428 15176 80.91.229.12 (8 Dec 2010 23:53:48 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 8 Dec 2010 23:53:48 +0000 (UTC) Cc: Fren Zeee To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Thu Dec 09 00:53:44 2010 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1PQTpP-0006Sl-RA for geh-help-gnu-emacs@m.gmane.org; Thu, 09 Dec 2010 00:53:44 +0100 Original-Received: from localhost ([127.0.0.1]:43771 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PQTpP-0006lN-84 for geh-help-gnu-emacs@m.gmane.org; Wed, 08 Dec 2010 18:53:43 -0500 Original-Path: usenet.stanford.edu!postnews.google.com!g19g2000yqc.googlegroups.com!not-for-mail Original-Newsgroups: gnu.emacs.help,comp.emacs,comp.lang.lisp Original-Lines: 200 Original-NNTP-Posting-Host: 75.31.76.168 Original-X-Trace: posting.google.com 1280467775 5865 127.0.0.1 (30 Jul 2010 05:29:35 GMT) Original-X-Complaints-To: groups-abuse@google.com Original-NNTP-Posting-Date: Fri, 30 Jul 2010 05:29:35 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: g19g2000yqc.googlegroups.com; posting-host=75.31.76.168; posting-account=Xy1x0QoAAAC1_8XWVbTILoO5VL5JMCDm User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; {83B3ACED-AC9F-2058-FD69-DBCDCD722B97}; (R1 1.5)),gzip(gfe) Original-Xref: usenet.stanford.edu gnu.emacs.help:180217 comp.emacs:100275 comp.lang.lisp:290651 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:76248 Archived-At: On Jul 29, 2:55=C2=A0pm, Xah Lee wrote: > 2010-07-29 > > On Jul 29, 3:02=C2=A0am, Elena wrote: > > > On Jul 29, 6:40=C2=A0am, Thien-Thi Nguyen wrote: > > > > Why does the search start with Google (and continue with other > > > downstream, non-terminating, whirlpool-shaped, out of date, referenda= )? > > > Why not go to the source? =C2=A0The Emacs Lisp manual, the Emacs Lisp= code, > > > the Emacs customization facility, the Emacs *scratch* buffer, the Ema= cs! > > > Surprisingly enough - or not? - it seems few users do read the > > manuals... I'm guilty of this too (and Emacs' manuals will be my > > reading on my next vacations). > > i always thought of doing this, but just never did. Not the emacs > manual, nor the elisp manual. Over the past 12 years of using emacs > daily, i probably have read only 1/2 of each, counted in a > accumulative way. > > However, i have read cover to cover, word for word, systematically in > a continued setting, several programing lang or software docs/books. > For examples: > > -------------------- > > =E2=80=A2 Microsoft Word manual i've basically read cover to cover in abo= ut > 1992. (stopped using Microsoft Word completely in about 1999) > > -------------------- > =E2=80=A2 HP-28S Advanced Scientific Calculator manual. (2 books) I read = cover > to cover, i think twice, in about 1991. In fact this is how i learned > programing, my first computer language, and the first i mastered. > > =E2=80=A2 HP-28S Advanced Scientific Calculator > =C2=A0http://xahlee.org/prog/hp28s/hp28s.html > > =E2=80=A2 Xah Lee's Computing Experience Bio > =C2=A0http://xahlee.org/PageTwo_dir/Personal_dir/xah_comp_exp.html > > -------------------- > =E2=80=A2 Mathematica manual (aka the Mathematica Book) i've read 3 times= in > separate years, from cover to cover. Note that Mathematica the > software, the subject it deals with, is inherently a order of > magnitude more complex than emacs. (the Mathematica book is over 1k > pages. > e.g.http://www.amazon.com/Mathematica-Book-Fourth-Stephen-Wolfram/dp/0521= ... > > since early 2000s, the software don't come with the book anymore, and > am not sure if they still produce printed manual at all now... change > with times... > ) > > -------------------- > =E2=80=A2 The Perl book/manual/=E2=80=9Cman pages=E2=80=9D. I've read bas= ically cover to cover > in about 1998, 1999. (yes, i own the printed book. The printed book > aka The Camel Book is edited version of the man pages. Actually i read > all major perl books in late 2000s. > See: > =E2=80=A2 Pathetically Elational Regex Language (PERL) > =C2=A0http://xahlee.org/UnixResource_dir/perlr.html > ) > > > Emacs is too much a complex (not > > difficult) and powerful software to be used by intuition alone, unlike > > many softwares we are used to. > > This is simply not true. > > For example, from personal experience, Blender, Second Life both are > more complex than emacs, both for learning it, as well in terms of > effort or complexity of their implementation, as well as inherent > complexity by the nature of what the software do. > > Second Life i've been using for about 3 years now. see: > > =E2=80=A2 A Photographic Tour of Life in Second Life > =C2=A0http://xahlee.org/sl/index.html > > Blender i started to learn this year... but really too complex... > > I'd say, Blender or Second Life, each, are a order magnitude more > complex and rich than emacs, either you consider simple use aspect, or > deep use aspect such as extension and programing them. > > Also, depending on what you mean by use... for example, if you go into > the programing aspect, then programing Java, C, C++, all are far more > difficult and complex than programing emacs lisp. If you are thinking > of using emacs lisp to program major/minor emacs modes, manipulate > font, creating clients, etc, than, OS GUI platforms such as Mac or > Windows is a order far more complex as well powerful. > > am writing this because i want to dispel certain cult phenomen about > emacs... on the net we often hear some god-like thing about emacs, but > i think if you look at it seriously, usually much of it doesn't mean > anything. > > since i kept thinking about this issue over the years, and in argument > with many old-time emacs users, i thought about the question: if there > is any way, or comment, about emacs that we can justify in claming, > about its complexity, deepth, god-like quality, superiority etc. > > i think to that question we need to be specific. If some claim is made > specific, then it can be easily judged on its veracity. For examples, > the following i think can be reasonably claimed: > > Emacs is most suitable tool for text manipulation tasks that are > complex and not-well-defined and requires interactive human watch. > (See: =E2=80=A2 Why Emacs is Still so Useful Today =C2=A0http://xahlee.or= g/emacs/emacs_power_story.html) > > Emacs is most flexible, customizable, user extensible text editor. > > Emacs is the most well known and widely used editor that has a > embedded programing language for text editing. > > Emacs system (emacs+elisp) for text manipulation is probably the most > versatile computer language for text processing. (=E2=80=A2 Text Processi= ng: > Elisp vs Perl =C2=A0http://xahlee.org/emacs/elisp_text_processing_lang.ht= ml > ) > > the above claims are still not so precise, but are items i think can > be reasonably justified. Or can be made more precise, so that the sum > of them can makes sense to say that emacs is quite powerful and > versatile. > > On the other hand, the following i think are in the category of myths: > > =E2=80=A2 emacs manual is one of the best manual. > > =E2=80=A2 emacs's keyboard system is most well designed, or most extensib= le, > or most consistent. > > =E2=80=A2 emacs keyboard shortcuts and the way they are mapped to emacs's= text > manipulation commands, is a very efficient system. (e.g. ratio of > number of commands to call over arbitary text manipulation tasks) > > ... > > there are a lot such myths going around different communities. In perl > community, it's filled to the brim about how perl is this or that > great. In the Common Lisp community, you hear fantastic things about > lisp being the god of all programing languages, while people in this > community almost never mention emacs lisp as a language, and if they > do, it's all sneer and spits and attacks to no ends. In the Scheme > community, likewise you hear how it is the most beautiful, the most > powerful, of all, period. ( See:http://xahlee.org/UnixResource_dir/writ/s= cheme_fail.htmlhttp://xahlee.org/UnixResource_dir/writ/lang_purity_cult_dec= eption.html > =C2=A0) In unix community, usually hated by lispers of all walks of life, > you hear how unix is the most versatile, it's =E2=80=9CKISS=E2=80=9D et a= l > philosophy's greatness, etc. (see =E2=80=A2 The Nature of the Unix Philos= ophyhttp://xahlee.org/UnixResource_dir/writ/unix_phil.html) Likewise, > there's also commercially generated myths, e.g. Java, about how it > solves all cross-platform problems, and how OOP solves the world's > programing problems, etc. > > all these spur from communities that developed certain cult following. > Ultimately, it's more harmful than good. > > What i like to say, is that, yes i love emacs and you love emacs. > However, when praising, be specific on what you like about it, and > avoid cultivating some sense of greatness that's not based on fact or > can't be very meaningful. > > =C2=A0 Xah > =E2=88=91http://xahlee.org/ > > =E2=98=84 If you say, and I take your word on face value, that emacs is so simple - and that you spent so much effort on softwares that you later abandoned like MS Word etc - explain here then, just the C code of eval.c and eval.h and how to add a primitive. A concrete example has to follow the very generalized claims. Make a small demonstrative translation with a metacircular eval and its translation to C side by side. A small diagram to explain the garbage collector operation (Is he using the mark and sweep or another algorithm?). In addition, if Mathematica is Lisp in disguise with some additional code for computer algebra, its not that much more complicated than emacs.