help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: learning Emacs Lisp


From: Wei Weng
Subject: Re: learning Emacs Lisp
Date: Tue, 11 Nov 2008 01:49:37 -0500
User-agent: Thunderbird 2.0.0.17 (X11/20080925)

Niels Giesen wrote:
> Richard Riley <rileyrgdev@gmail.com> writes:
> [...]
>> Of course. But eLisp is special in that its almost unreadable to the
>> typical procedural programmer fluent in C/C++ etc until you know a lot
>> if it already. Or that was my experience. And we all have different
>> experiences so it does no harm to remain open as to what suits other
>> people.
> 
> Where is there any evidence that the original OP is a `typical
> procedural programmer fluent in C/C++'? 
> 
> It annoys me to pieces that so many textbooks assume that everyone out
> there is a C/C++/Java programmer. For me, Lisp was my first
> programming language (thanks to Emacs, which I started using to write
> law papers in), and I do not need textbooks to explain for instance
> Ruby to me in Lisp (which is perfectly feasible) but I even less need
> comparisons with Java or C. Even worse, doing so is a major
> distraction from the real object of learning. 
> 
> Consider teaching Dutch to someone from Morocco but using English
> during the lessons: that's just plain silly and simply leads to
> unnecessary confusion. Using analogies from Slovak to teach Polish
> however may be insightful, but only when the student already has
> knowledge of a Slavic language. Same goes with programming languages:
> do not assume.
> 
> When teaching something, teach it by itself; people willing to learn a
> new language are most likely not stupid, and if they are somewhat
> smart, they will find out for themselves what differences and
> similarities there are between languages known already.
> 
> For me, it would have been nice when learning JavaScript if the books
> had warned me that not everything is an expression (invalid left-hand
> assignment anyone?), that you have to explicitly return something,
> that there are things such as keywords, and it would be nice if
> textbooks explain how to take advantage of closures instead of trying
> to get rid of them, hide them, and how to build an ugly half-assed
> Class system.
> 
> The first few of those would cause people coming from C or Java at
> least to frown but most probably to get irritated ("Why would I care
> about all these strange incomprehensible things from some dead
> language with too many parens, when all I want to do is simply to
> learn JavaScript?????"). Therefore, I would not recommend such in a
> learning text on JavaScript.
> 
> The second however, how to make good use of lexical scoping, is
> interesting to learn, and should be explained by itself, as should be
> prototype based inheritance and functions as first-class things (two
> of which could - but should not - be explained by comparison with
> Lisp).
> 
> Comparisons with Java-style OOP however should not be in a basic
> textbook on learning JavaScript, and certainly no attempt should be
> made to mimic it -- for the very same reasons that comparisons with
> Lisp should not be made in a general textbook.

This is a very typical case of "Too many words, too few substances".

You spent all these time typing out all these words, I can summarize in 1 line:

Elisp is very different from C/C++/Java, and it is my (Niels) first language.


Thanks
Wei




reply via email to

[Prev in Thread] Current Thread [Next in Thread]