From: Xah Lee on
2010-07-29

On Jul 29, 3:02 am, Elena <egarr...(a)gmail.com> wrote:
> On Jul 29, 6:40 am, Thien-Thi Nguyen <t...(a)gnuvola.org> 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?  The Emacs Lisp manual, the Emacs Lisp code,
> > the Emacs customization facility, the Emacs *scratch* buffer, the Emacs!
>
> 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:

--------------------

• Microsoft Word manual i've basically read cover to cover in about
1992. (stopped using Microsoft Word completely in about 1999)

--------------------
• 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.

• HP-28S Advanced Scientific Calculator
http://xahlee.org/prog/hp28s/hp28s.html

• Xah Lee's Computing Experience Bio
http://xahlee.org/PageTwo_dir/Personal_dir/xah_comp_exp.html

--------------------
• 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/0521643147/

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...
)

--------------------
• The Perl book/manual/“man pages”. I've read basically 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:
• Pathetically Elational Regex Language (PERL)
http://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:

• A Photographic Tour of Life in Second Life
http://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: • Why Emacs is Still so Useful Today http://xahlee.org/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. (• Text Processing:
Elisp vs Perl http://xahlee.org/emacs/elisp_text_processing_lang.html
)

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:

• emacs manual is one of the best manual.

• emacs's keyboard system is most well designed, or most extensible,
or most consistent.

• 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/scheme_fail.html
http://xahlee.org/UnixResource_dir/writ/lang_purity_cult_deception.html
) In unix community, usually hated by lispers of all walks of life,
you hear how unix is the most versatile, it's “KISS” et al
philosophy's greatness, etc. (see • The Nature of the Unix Philosophy
http://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.

Xah
∑ http://xahlee.org/

☄
From: Fren Zeee on
On Jul 29, 2:55 pm, Xah Lee <xah...(a)gmail.com> wrote:
> 2010-07-29
>
> On Jul 29, 3:02 am, Elena <egarr...(a)gmail.com> wrote:
>
> > On Jul 29, 6:40 am, Thien-Thi Nguyen <t...(a)gnuvola.org> 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?  The Emacs Lisp manual, the Emacs Lisp code,
> > > the Emacs customization facility, the Emacs *scratch* buffer, the Emacs!
>
> > 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:
>
> --------------------
>
> • Microsoft Word manual i've basically read cover to cover in about
> 1992. (stopped using Microsoft Word completely in about 1999)
>
> --------------------
> • 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.
>
> • HP-28S Advanced Scientific Calculator
>  http://xahlee.org/prog/hp28s/hp28s.html
>
> • Xah Lee's Computing Experience Bio
>  http://xahlee.org/PageTwo_dir/Personal_dir/xah_comp_exp.html
>
> --------------------
> • 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...
> )
>
> --------------------
> • The Perl book/manual/“man pages”. I've read basically 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:
> • Pathetically Elational Regex Language (PERL)
>  http://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:
>
> • A Photographic Tour of Life in Second Life
>  http://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: • Why Emacs is Still so Useful Today  http://xahlee.org/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. (• Text Processing:
> Elisp vs Perl  http://xahlee.org/emacs/elisp_text_processing_lang.html
> )
>
> 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:
>
> • emacs manual is one of the best manual.
>
> • emacs's keyboard system is most well designed, or most extensible,
> or most consistent.
>
> • 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/scheme_fail.htmlhttp://xahlee.org/UnixResource_dir/writ/lang_purity_cult_deception.html
>  ) In unix community, usually hated by lispers of all walks of life,
> you hear how unix is the most versatile, it's “KISS” et al
> philosophy's greatness, etc. (see • The Nature of the Unix Philosophyhttp://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.
>
>   Xah
> ∑http://xahlee.org/
>
> ☄

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.

From: Tim Bradshaw on
On 2010-07-30 06:29:34 +0100, Fren Zeee said:

> 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.

That's a bit like saying that a 6502 is complicated to program because
there are so many transistors to understand.

From: C.R. Kirkwood-Watts on
__ Fren Zeee <frenzeee(a)gmail.com> _____
| 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.

Why do you keep asking for this? Why not just read the source
yourself? You've asked for this enough times that no one takes you
seriously anymore. It's less effort for you to understand it yourself
than for someone else to explain it to you.

If you let us know how far you got in your tries to understand, and
where you got stuck, you may receive gentle nudges in the right
direction. However, no one sees the benefit of doing all your work for
you.