unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* How to learn elisp ?
@ 2009-08-05 10:08 waterloo
  2009-08-05 11:24 ` Andy Stewart
                   ` (2 more replies)
  0 siblings, 3 replies; 27+ messages in thread
From: waterloo @ 2009-08-05 10:08 UTC (permalink / raw)
  To: help-gnu-emacs

[-- Attachment #1: Type: text/plain, Size: 360 bytes --]

I am not a programmer.
I have used emacs for a period of time .
I have read `A Introduction to emacs lisp' and Orelly's Learn Gnu Emacs 3ed
.

Now I am reading `Emacs Lisp Reference' , I feel it is harder and my
progress is slow.

How to learn elisp ? Because I need to write or modify some functions.

Do I need to read Emacs Lisp Reference wholely ?

Thanks

[-- Attachment #2: Type: text/html, Size: 411 bytes --]

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
       [not found] <mailman.3930.1249466928.2239.help-gnu-emacs@gnu.org>
@ 2009-08-05 10:26 ` David Kastrup
  2009-08-05 10:40   ` Thierry Volpiatto
  2009-08-05 11:44 ` Elena
  2009-08-06 23:28 ` despen
  2 siblings, 1 reply; 27+ messages in thread
From: David Kastrup @ 2009-08-05 10:26 UTC (permalink / raw)
  To: help-gnu-emacs

waterloo <waterloo2005@gmail.com> writes:

> I am not a programmer.
> I have used emacs for a period of time .
> I have read `A Introduction to emacs lisp' and Orelly's Learn Gnu Emacs 3ed .
>
> Now I am reading `Emacs Lisp Reference' , I feel it is harder and my progress
> is slow.
>
> How to learn elisp ? Because I need to write or modify some functions.
>
> Do I need to read Emacs Lisp Reference wholely ?

Try the Emacs Lisp Introduction.

(info "(eintr)")
                ^ Press C-c C-e here

-- 
David Kastrup


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
  2009-08-05 10:26 ` David Kastrup
@ 2009-08-05 10:40   ` Thierry Volpiatto
  0 siblings, 0 replies; 27+ messages in thread
From: Thierry Volpiatto @ 2009-08-05 10:40 UTC (permalink / raw)
  To: help-gnu-emacs

David Kastrup <dak@gnu.org> writes:

> waterloo <waterloo2005@gmail.com> writes:
>
>> I am not a programmer.
>> I have used emacs for a period of time .
>> I have read `A Introduction to emacs lisp' and Orelly's Learn Gnu Emacs 3ed .
>>
>> Now I am reading `Emacs Lisp Reference' , I feel it is harder and my progress
>> is slow.
>>
>> How to learn elisp ? Because I need to write or modify some functions.
>>
>> Do I need to read Emacs Lisp Reference wholely ?
>
> Try the Emacs Lisp Introduction.
>
> (info "(eintr)")
>                 ^ Press C-c C-e here
C-x C-e ==> `eval-last-sexp'

-- 
A + Thierry Volpiatto
Location: Saint-Cyr-Sur-Mer - France





^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
  2009-08-05 10:08 waterloo
@ 2009-08-05 11:24 ` Andy Stewart
  2009-08-05 13:06 ` Drew Adams
       [not found] ` <mailman.3940.1249477629.2239.help-gnu-emacs@gnu.org>
  2 siblings, 0 replies; 27+ messages in thread
From: Andy Stewart @ 2009-08-05 11:24 UTC (permalink / raw)
  To: help-gnu-emacs

waterloo <waterloo2005@gmail.com> writes:

> I am not a programmer.
> I have used emacs for a period of time .
> I have read `A Introduction to emacs lisp' and Orelly's Learn Gnu Emacs 3ed .
>
> Now I am reading `Emacs Lisp Reference' , I feel it is harder and my progress is slow.
>
> How to learn elisp ? Because I need to write or modify some functions.
>
> Do I need to read Emacs Lisp Reference wholely ?
Yes, you need, if you want know very detail of Emacs.

  -- Andy





^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
@ 2009-08-05 11:26 waterloo
  2009-08-05 11:47 ` Tim Visher
  0 siblings, 1 reply; 27+ messages in thread
From: waterloo @ 2009-08-05 11:26 UTC (permalink / raw)
  To: help-gnu-emacs, dak

[-- Attachment #1: Type: text/plain, Size: 141 bytes --]

I have read the manual "An Introduction to Programming in Emacs Lisp".

But still I can not be able to write complete code of lisp .

Thanks

[-- Attachment #2: Type: text/html, Size: 167 bytes --]

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
       [not found] <mailman.3930.1249466928.2239.help-gnu-emacs@gnu.org>
  2009-08-05 10:26 ` David Kastrup
@ 2009-08-05 11:44 ` Elena
  2009-08-06 23:28 ` despen
  2 siblings, 0 replies; 27+ messages in thread
From: Elena @ 2009-08-05 11:44 UTC (permalink / raw)
  To: help-gnu-emacs

On 5 Ago, 10:08, waterloo <waterloo2...@gmail.com> wrote:
> I am not a programmer.
> I have used emacs for a period of time .
> I have read `A Introduction to emacs lisp' and Orelly's Learn Gnu Emacs 3ed
> .
>
> Now I am reading `Emacs Lisp Reference' , I feel it is harder and my
> progress is slow.
>
> How to learn elisp ? Because I need to write or modify some functions.
>
> Do I need to read Emacs Lisp Reference wholely ?
>
> Thanks

http://www.amazon.com/Writing-GNU-Emacs-Extensions-Glickstein/dp/1565922611

Afterwards, you can have a look to Emacs Lisp Reference, to know what
is available to you.



^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
  2009-08-05 11:26 How to learn elisp ? waterloo
@ 2009-08-05 11:47 ` Tim Visher
  2009-08-05 11:59   ` waterloo
       [not found]   ` <mailman.3936.1249473586.2239.help-gnu-emacs@gnu.org>
  0 siblings, 2 replies; 27+ messages in thread
From: Tim Visher @ 2009-08-05 11:47 UTC (permalink / raw)
  To: waterloo; +Cc: help-gnu-emacs, dak

On Wed, Aug 5, 2009 at 7:26 AM, waterloo<waterloo2005@gmail.com> wrote:
> I have read the manual "An Introduction to Programming in Emacs Lisp".
>
> But still I can not be able to write complete code of lisp .

If you've read that manual then you should be well on your way to
writing complete elisp code.  If you're having a specific problem then
feel free to ask about that, but you already have all the resources
you probably should need except perhaps a friend who already knows
elisp well.  That's what the list is here for. ;)

-- 

In Christ,

Timmy V.

http://burningones.com/
http://five.sentenc.es/ - Spend less time on e-mail




^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
  2009-08-05 11:47 ` Tim Visher
@ 2009-08-05 11:59   ` waterloo
  2009-08-05 12:54     ` Andy Stewart
       [not found]     ` <mailman.3941.1249477743.2239.help-gnu-emacs@gnu.org>
       [not found]   ` <mailman.3936.1249473586.2239.help-gnu-emacs@gnu.org>
  1 sibling, 2 replies; 27+ messages in thread
From: waterloo @ 2009-08-05 11:59 UTC (permalink / raw)
  To: Tim Visher; +Cc: help-gnu-emacs, dak

[-- Attachment #1: Type: text/plain, Size: 780 bytes --]

But I have not read Emacs Lisp Reference , It is a huge book .


2009/8/5 Tim Visher <tim.visher@gmail.com>

> On Wed, Aug 5, 2009 at 7:26 AM, waterloo<waterloo2005@gmail.com> wrote:
> > I have read the manual "An Introduction to Programming in Emacs Lisp".
> >
> > But still I can not be able to write complete code of lisp .
>
> If you've read that manual then you should be well on your way to
> writing complete elisp code.  If you're having a specific problem then
> feel free to ask about that, but you already have all the resources
> you probably should need except perhaps a friend who already knows
> elisp well.  That's what the list is here for. ;)
>
> --
>
> In Christ,
>
> Timmy V.
>
> http://burningones.com/
> http://five.sentenc.es/ - Spend less time on e-mail
>

[-- Attachment #2: Type: text/html, Size: 1343 bytes --]

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
       [not found] <mailman.3934.1249471596.2239.help-gnu-emacs@gnu.org>
@ 2009-08-05 12:08 ` Xah Lee
  0 siblings, 0 replies; 27+ messages in thread
From: Xah Lee @ 2009-08-05 12:08 UTC (permalink / raw)
  To: help-gnu-emacs

On Aug 5, 4:26 am, waterloo <waterloo2...@gmail.com> wrote:
> I have read the manual "An Introduction to Programming in Emacs Lisp".
>
> But still I can not be able to write complete code of lisp .

Practice. :)

I use emacs for like 8 hours a day daily since 1998. I read quite a
lot emacs manual. For the first about 5 years i use emacs completely
in a text terminal with emacs keybinding and ways. I thought i knew a
lot about emacs, yet i didn't know shit about elisp until 2006 i
started to learn it. Kinda resisted learning it. Learning a bit elisp
helps your emacs using a lot. I've been programing elisp in a
leisurely since 2006, am pretty good for using elisp as a text
processing lang such as perl, python, but still quite hard to code
emacs features such as major mode, minor mode, frames/windows, font
etc.

just patience and practice. If you are not a programer, more practice
i guess.

I have now some emacs tutorial i think you probably have seen. Here's
some simple examples that might help.

• Emacs Lisp Examples
  http://xahlee.org/emacs/elisp_examples.html

start small and gradual with tidbits of useful examples works well for
me.

  Xah
∑ http://xahlee.org/^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
  2009-08-05 11:59   ` waterloo
@ 2009-08-05 12:54     ` Andy Stewart
       [not found]     ` <mailman.3941.1249477743.2239.help-gnu-emacs@gnu.org>
  1 sibling, 0 replies; 27+ messages in thread
From: Andy Stewart @ 2009-08-05 12:54 UTC (permalink / raw)
  To: help-gnu-emacs

waterloo <waterloo2005@gmail.com> writes:

> But I have not read Emacs Lisp Reference , It is a huge book .
If you want write elisp extension, don't find any other resource, Emacs Lisp Reference is best resource about elisp.
It's not too huge, just read one part everyday.

You will write best elisp extension after you read complete.

  -- Andy

>
> 2009/8/5 Tim Visher <tim.visher@gmail.com>
>
>     On Wed, Aug 5, 2009 at 7:26 AM, waterloo<waterloo2005@gmail.com> wrote:
>     > I have read the manual "An Introduction to Programming in Emacs Lisp".
>     >
>     > But still I can not be able to write complete code of lisp .
>
>     If you've read that manual then you should be well on your way to
>     writing complete elisp code.  If you're having a specific problem then
>     feel free to ask about that, but you already have all the resources
>     you probably should need except perhaps a friend who already knows
>     elisp well.  That's what the list is here for. ;)
>
>     --
>
>     In Christ,
>
>     Timmy V.
>
>     http://burningones.com/
>     http://five.sentenc.es/ - Spend less time on e-mail





^ permalink raw reply	[flat|nested] 27+ messages in thread

* RE: How to learn elisp ?
  2009-08-05 10:08 waterloo
  2009-08-05 11:24 ` Andy Stewart
@ 2009-08-05 13:06 ` Drew Adams
       [not found] ` <mailman.3940.1249477629.2239.help-gnu-emacs@gnu.org>
  2 siblings, 0 replies; 27+ messages in thread
From: Drew Adams @ 2009-08-05 13:06 UTC (permalink / raw)
  To: 'waterloo', help-gnu-emacs

	I am not a programmer. 
	I have used emacs for a period of time .
	I have read `A Introduction to emacs lisp' and Orelly's Learn Gnu Emacs
3ed .
	
	Now I am reading `Emacs Lisp Reference' , I feel it is harder and my
progress is slow.
	How to learn elisp ? Because I need to write or modify some functions.
	Do I need to read Emacs Lisp Reference wholely ? 
	
http://www.emacswiki.org/emacs/LearnEmacsLisp	






^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
       [not found]   ` <mailman.3936.1249473586.2239.help-gnu-emacs@gnu.org>
@ 2009-08-05 13:18     ` Anselm Helbig
  0 siblings, 0 replies; 27+ messages in thread
From: Anselm Helbig @ 2009-08-05 13:18 UTC (permalink / raw)
  To: help-gnu-emacs

At Wed, 5 Aug 2009 19:59:37 +0800,
waterloo <waterloo2005@gmail.com> wrote:
> 
> [1  <text/plain; ISO-8859-1 (7bit)>]
> 
> [2  <text/html; ISO-8859-1 (quoted-printable)>]
> But I have not read Emacs Lisp Reference , It is a huge book .

Well, it's a reference manual, you're not supposed to read it from
cover to cover. Just pick a chapter that covers the stuff you're
interested in. Or read about the available data types. Experiment as
you go. 

Happy Hacking!

Anselm


-- 
Anselm Helbig 
mailto:anselm.helbig+news2009@googlemail.com


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
@ 2009-08-05 13:56 waterloo
  2009-08-05 14:06 ` Andy Stewart
       [not found] ` <mailman.3945.1249481229.2239.help-gnu-emacs@gnu.org>
  0 siblings, 2 replies; 27+ messages in thread
From: waterloo @ 2009-08-05 13:56 UTC (permalink / raw)
  To: lazycat.manatee, help-gnu-emacs

[-- Attachment #1: Type: text/plain, Size: 123 bytes --]

Emacs Lisp Reference is sufficient ?

I feel  Emacs Lisp Reference is harder and some sections is obscure to me .


Thanks

[-- Attachment #2: Type: text/html, Size: 143 bytes --]

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
  2009-08-05 13:56 waterloo
@ 2009-08-05 14:06 ` Andy Stewart
       [not found] ` <mailman.3945.1249481229.2239.help-gnu-emacs@gnu.org>
  1 sibling, 0 replies; 27+ messages in thread
From: Andy Stewart @ 2009-08-05 14:06 UTC (permalink / raw)
  To: waterloo; +Cc: help-gnu-emacs

waterloo <waterloo2005@gmail.com> writes:

> Emacs Lisp Reference is sufficient ?
I think this have two resource for study Emacs and elisp:
        one is "Emacs Lisp Referenece", another is EmacsWiki.org

> I feel  Emacs Lisp Reference is harder and some sections is obscure to me .
I think Emacs Lisp Reference is funny manual, it's the biggest advantage
of Emacs.
I haven't seen any application's document better than Emacs. 

One thing to read "Emacs Lisp Reference" is "take pains", Emacs need
study it everyday, and study is endless even you read complete Emacs
Lisp Reference.

It's wrong thinking that want study Emacs in short time.

Explore emacs is looooooooooooooong way...... :)

Cheers,

  -- Andy




^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
       [not found] ` <mailman.3940.1249477629.2239.help-gnu-emacs@gnu.org>
@ 2009-08-05 15:34   ` Pascal J. Bourguignon
  2009-08-05 15:47     ` Drew Adams
       [not found]   ` <7cocqujmui.fsf@pbourguignon.informatimago.com>
  1 sibling, 1 reply; 27+ messages in thread
From: Pascal J. Bourguignon @ 2009-08-05 15:34 UTC (permalink / raw)
  To: help-gnu-emacs

"Drew Adams" <drew.adams@oracle.com> writes:

> 	I am not a programmer. 
> 	I have used emacs for a period of time .
> 	I have read `A Introduction to emacs lisp' and Orelly's Learn Gnu Emacs
>   3ed .
> 	
> 	Now I am reading `Emacs Lisp Reference' , I feel it is harder and my
>   progress is slow.
> 	How to learn elisp ? Because I need to write or modify some functions.
> 	Do I need to read Emacs Lisp Reference wholely ? 

Yes, but not yet.
 	
Since you are not (yet) a programmer, you will need to learn
programming, to become one.  Study these books, one after the other:

    Common Lisp: A Gentle Introduction to Symbolic Computation
    David S. Touretzky
    http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/index.html
    http://www.cs.cmu.edu/~dst/LispBook/


    Structure and Interpretation of Computer Programs
    Harold Abelson & Gerald Jay Sussman, with Julie Sussman
    http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-4.html
    http://swiss.csail.mit.edu/classes/6.001/abelson-sussman-lectures/


The first gives you an easy introduction to programming.
The seconds gives you good fundamentals to programming.

The only drawback is that they don't use emacs lisp for their
examples.   The first uses Common Lisp, which is quite close to emacs
lisp.  There are significant technical differences, so you will
probably learn some Common Lisp along, but it will also make you
understand better emacs lisp, and teach you how to program in lisp.

For example, to insert X times a line in a buffer in emacs lisp you would write:

      (defun happy (n)
        (dotimes (i n)
           (insert (format "Happy %d%s birthday!\n" 
                            i (case i
                                 (0 "th")
                                 (1 "st")
                                 (2 "nd")
                                 (3 "rd")
                                 (otherwise "th"))))))


In Common Lisp you would write:

      (defun happy (n)
        (dotimes (i n)
           (format t "Happy ~d~:*~[th~;st~;nd~;rd~:;th~] birthday!~%" i)))

or you could write it more like in emacs lisp:

      (defun insert (&rest args) ; there's no buffer, therefore no insert in Common Lisp.
         (dolist (arg args) (princ arg))) ; we will just princ the arguments to the output.

      (defun happy (n)
        (dotimes (i n)
           (insert (format nil "Happy ~d~a birthday!~%" 
                            i (case i
                                 (0 "th")
                                 (1 "st")
                                 (2 "nd")
                                 (3 "rd")
                                 (otherwise "th"))))))

You will have to be aware of the differences, but there is a big core
of common principles and operators, so you can easily write code that
work the same, or quite similarly, in either lisp.  Learning how to
program with a Common Lisp book will help you to program in emacs
lisp, it's basically the same ability.

If you put (require 'cl) in your ~/.emacs, you will load a set of
functions and macros like thoses found in Common Lisp.

If you install eieio (from cedet.sourceforge.net), and (require
'eieio) in your ~/.emacs, you will even get a clone of CLOS (the
Common Lisp Object System), if you want to do OO programming in emacs
lisp.

    The most notable difference between emacs lisp and Common Lisp
    are that all variable bindings in emacs lisp are dynamic, while
    Common Lisp uses lexical binding by default, and optionnally (eg
    for global variables), uses dynamic binding.  In Scheme, there is
    only lexical bindings.  As a consequence, there is no closure in
    emacs lisp (but (require 'cl) provides a simulated lexical binding
    operator (lexical-let) which allow you to create kind of
    closures).





For SICP, this book uses scheme, another kind of lisp, for its
examples.  But its teaching goes way beyond the specific programming
language, and it is really worth studying if you want to make good
programs.  (Note that these exercises have been translated in several
programming languages, including Common Lisp
http://www.codepoetics.com/wiki/index.php?title=Topics:SICP_in_other_languages
)


> http://www.emacswiki.org/emacs/LearnEmacsLisp	

You can also get help from:

news:gnu.emacs.help
irc://irc.freenode.org/#emacs
    for emacs specific questions,

http://cliki.net/
news:comp.lang.lisp
irc://irc.freenode.org/#lisp
    for Common Lisp specific questions, or general lisp questions (including gentle or sicp).

http://www.scheme.org/
news:comp.lang.scheme
irc://irc.freenode.org/#scheme
    for scheme specific questions (including sicp).

-- 
__Pascal Bourguignon__


^ permalink raw reply	[flat|nested] 27+ messages in thread

* RE: How to learn elisp ?
  2009-08-05 15:34   ` Pascal J. Bourguignon
@ 2009-08-05 15:47     ` Drew Adams
  0 siblings, 0 replies; 27+ messages in thread
From: Drew Adams @ 2009-08-05 15:47 UTC (permalink / raw)
  To: 'Pascal J. Bourguignon', help-gnu-emacs

> "Drew Adams" <drew.adams@oracle.com> writes:
> 
> > 	I am not a programmer. 
...   [other stuff I didn't write]
> 
> Yes, but not yet.
>  	
> Since you are not (yet) a programmer, you will need to learn
> programming, to become one...

Nope, I didn't write any of what you attributed to me. ;-)





^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
       [not found] ` <mailman.3945.1249481229.2239.help-gnu-emacs@gnu.org>
@ 2009-08-05 15:49   ` A.Politz
  2009-08-05 16:25     ` Richard Riley
  0 siblings, 1 reply; 27+ messages in thread
From: A.Politz @ 2009-08-05 15:49 UTC (permalink / raw)
  To: help-gnu-emacs

On Aug 5, 4:06 pm, Andy Stewart <lazycat.mana...@gmail.com> wrote:

> It's wrong thinking that want study Emacs in short time.
>
> Explore emacs is looooooooooooooong way...... :)
>
Yes emacs, but not elisp.

The elisp-manual can be approximately split in 2 parts. The first is
about elisp, the second about how emacs uses elisp for certain tasks.

I would recommend reading the first couple chapters including
`Functions', while skipping `Hash Tables'. The rest as needed for your
future concrete goals.

-ap



^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
  2009-08-05 15:49   ` A.Politz
@ 2009-08-05 16:25     ` Richard Riley
  0 siblings, 0 replies; 27+ messages in thread
From: Richard Riley @ 2009-08-05 16:25 UTC (permalink / raw)
  To: help-gnu-emacs

"A.Politz" <politza@googlemail.com> writes:

> On Aug 5, 4:06 pm, Andy Stewart <lazycat.mana...@gmail.com> wrote:
>
>> It's wrong thinking that want study Emacs in short time.
>>
>> Explore emacs is looooooooooooooong way...... :)
>>
> Yes emacs, but not elisp.
>
> The elisp-manual can be approximately split in 2 parts. The first is
> about elisp, the second about how emacs uses elisp for certain tasks.
>
> I would recommend reading the first couple chapters including
> `Functions', while skipping `Hash Tables'. The rest as needed for your
> future concrete goals.
>
> -ap
>

One of the best practical introduction to eLisp is Xah Lee's tutorial.

http://xahlee.org/emacs/elisp.html


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
@ 2009-08-05 16:28 waterloo
  0 siblings, 0 replies; 27+ messages in thread
From: waterloo @ 2009-08-05 16:28 UTC (permalink / raw)
  To: help-gnu-emacs, pjb

[-- Attachment #1: Type: text/plain, Size: 635 bytes --]

Thanks  very much !
I feel you are an expert .
I have heard that Lisp is a powerful language in computer science and plays
an important role in Computer Science Depart of Mit.
Two books what you recommand are very classical .



Yes, but not yet.
>
> Since you are not (yet) a programmer, you will need to learn
> programming, to become one.  Study these books, one after the other:
>
>    Common Lisp: A Gentle Introduction to Symbolic Computation
>    David S. Touretzky
>
> http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/index.html
>    http://www.cs.cmu.edu/~dst/LispBook/<http://www.cs.cmu.edu/%7Edst/LispBook/>
>

[-- Attachment #2: Type: text/html, Size: 978 bytes --]

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
       [not found]     ` <mailman.3950.1249487281.2239.help-gnu-emacs@gnu.org>
@ 2009-08-05 17:21       ` Pascal J. Bourguignon
  2009-08-05 17:45         ` Drew Adams
  0 siblings, 1 reply; 27+ messages in thread
From: Pascal J. Bourguignon @ 2009-08-05 17:21 UTC (permalink / raw)
  To: help-gnu-emacs

"Drew Adams" <drew.adams@oracle.com> writes:

>> "Drew Adams" <drew.adams@oracle.com> writes:
>> 
>> > 	I am not a programmer. 
> ...   [other stuff I didn't write]
>> 
>> Yes, but not yet.
>>  	
>> Since you are not (yet) a programmer, you will need to learn
>> programming, to become one...
>
> Nope, I didn't write any of what you attributed to me. ;-)

Sorry.  Somebody used misleading non-standard quotation syntax. :-(

-- 
__Pascal Bourguignon__


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
       [not found] <mailman.3943.1249480576.2239.help-gnu-emacs@gnu.org>
@ 2009-08-05 17:31 ` Barry Margolin
  2009-08-05 17:53   ` Pascal J. Bourguignon
  0 siblings, 1 reply; 27+ messages in thread
From: Barry Margolin @ 2009-08-05 17:31 UTC (permalink / raw)
  To: help-gnu-emacs

In article <mailman.3943.1249480576.2239.help-gnu-emacs@gnu.org>,
 waterloo <waterloo2005@gmail.com> wrote:

> Emacs Lisp Reference is sufficient ?
> 
> I feel  Emacs Lisp Reference is harder and some sections is obscure to me .

This is a reference manual, not a tutorial, it's not intended as a 
learning mechanism.

IMHO, the best way to learn any programming language is to read and 
write code in the language.  So look at existing Emacs packages for 
example code, and then start writing your own stuff.  You'll learn best 
by doing.

-- 
Barry Margolin, barmar@alum.mit.edu
Arlington, MA
*** PLEASE post questions in newsgroups, not directly to me ***
*** PLEASE don't copy me on replies, I'll read them in the group ***


^ permalink raw reply	[flat|nested] 27+ messages in thread

* RE: How to learn elisp ?
  2009-08-05 17:21       ` Pascal J. Bourguignon
@ 2009-08-05 17:45         ` Drew Adams
  0 siblings, 0 replies; 27+ messages in thread
From: Drew Adams @ 2009-08-05 17:45 UTC (permalink / raw)
  To: 'Pascal J. Bourguignon', help-gnu-emacs

> Sorry.  Somebody used misleading non-standard quotation syntax. :-(

Oops, yes, my bad. I converted the OP to plain text, but I didn't bother to
insert "> " at the start of each quoted line.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
  2009-08-05 17:31 ` Barry Margolin
@ 2009-08-05 17:53   ` Pascal J. Bourguignon
  0 siblings, 0 replies; 27+ messages in thread
From: Pascal J. Bourguignon @ 2009-08-05 17:53 UTC (permalink / raw)
  To: help-gnu-emacs

Barry Margolin <barmar@alum.mit.edu> writes:

> In article <mailman.3943.1249480576.2239.help-gnu-emacs@gnu.org>,
>  waterloo <waterloo2005@gmail.com> wrote:
>
>> Emacs Lisp Reference is sufficient ?
>> 
>> I feel  Emacs Lisp Reference is harder and some sections is obscure to me .
>
> This is a reference manual, not a tutorial, it's not intended as a 
> learning mechanism.
>
> IMHO, the best way to learn any programming language is to read and 
> write code in the language.  So look at existing Emacs packages for 
> example code, 

Erm...  Do you have a list of _well_ _written_ emacs packages?  

I'm afraid that I find it easy to find badly written emacs lisp code.
Heavily procedural code (setq), lack of abstraction, giant functions, etc.

I probably have a distorted view here, since I mostly plunge in deep
emacs lisp code when I encounter a bug, so I see mostly bugged code in
the first place.


> and then start writing your own stuff.  You'll learn best 
> by doing.

-- 
__Pascal Bourguignon__


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
       [not found]     ` <mailman.3941.1249477743.2239.help-gnu-emacs@gnu.org>
@ 2009-08-06  9:32       ` Jyrki Tikka
  2009-08-06 12:32         ` Elena
  0 siblings, 1 reply; 27+ messages in thread
From: Jyrki Tikka @ 2009-08-06  9:32 UTC (permalink / raw)
  To: help-gnu-emacs

Andy Stewart <lazycat.manatee@gmail.com> writes:

> waterloo <waterloo2005@gmail.com> writes:
>
>> But I have not read Emacs Lisp Reference , It is a huge book .
> If you want write elisp extension, don't find any other resource, 
> Emacs Lisp Reference is best resource about elisp.
> It's not too huge, just read one part everyday.
>
> You will write best elisp extension after you read complete.
>
>   -- Andy

I almost agree with you Andy, but the O'Reilly book "Writing GNU Emacs
Extensions" by Bob Glickstein might be another way to reach
enlightenment.

-- 
jmt


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
  2009-08-06  9:32       ` Jyrki Tikka
@ 2009-08-06 12:32         ` Elena
  2009-08-06 14:59           ` Drew Adams
  0 siblings, 1 reply; 27+ messages in thread
From: Elena @ 2009-08-06 12:32 UTC (permalink / raw)
  To: help-gnu-emacs

On 6 Ago, 09:32, Jyrki Tikka <jmti...@hotmail.com> wrote:
> Andy Stewart <lazycat.mana...@gmail.com> writes:
> > waterloo <waterloo2...@gmail.com> writes:
>
> >> But I have not read Emacs Lisp Reference , It is a huge book .
> > If you want write elisp extension, don't find any other resource,
> > Emacs Lisp Reference is best resource about elisp.
> > It's not too huge, just read one part everyday.
>
> > You will write best elisp extension after you read complete.
>
> >   -- Andy
>
> I almost agree with you Andy, but the O'Reilly book "Writing GNU Emacs
> Extensions" by Bob Glickstein might be another way to reach
> enlightenment.
>
> --
> jmt

I second that. IMO, reading the Emacs Lisp Reference is overkill for a
beginner. Reading the Emacs Manual from cover to cover is more
rewarding from a user point of view.

Of course, once you will be acquainted with Emacs and Emacs Lisp, you
will want to (quickly) read the Reference from cover to cover to learn
what is available to you.

Indeed the Bob Glickstein's book enlightened me about matters involved
in writing extensions beyond simply knowing Emacs Lisp: saving undo
information, ecc.

"C-h f" and "C-h v" for jumping to the documentation of the function
or variable at point will be your best friends ;-)

Cheers


^ permalink raw reply	[flat|nested] 27+ messages in thread

* RE: How to learn elisp ?
  2009-08-06 12:32         ` Elena
@ 2009-08-06 14:59           ` Drew Adams
  0 siblings, 0 replies; 27+ messages in thread
From: Drew Adams @ 2009-08-06 14:59 UTC (permalink / raw)
  To: 'Elena', help-gnu-emacs

> "C-h f" and "C-h v" for jumping to the documentation of the function
> or variable at point will be your best friends ;-)

http://www.emacswiki.org/emacs/EmacsNewbieWithIcicles

See what you can do at any moment:

* See which possible inputs are expected by a command that reads input.

* See which key sequences are currently available, which of them are general vs
which are local, and what each of them does.

* See individual descriptions of the possible inputs, that is, help on
completion candidates (including with `C-h f', `C-h v').

* Find menu items more easily.

* Find commands more easily.

* Find help in the doc (manuals).

* Learn how to use regexps.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: How to learn elisp ?
       [not found] <mailman.3930.1249466928.2239.help-gnu-emacs@gnu.org>
  2009-08-05 10:26 ` David Kastrup
  2009-08-05 11:44 ` Elena
@ 2009-08-06 23:28 ` despen
  2 siblings, 0 replies; 27+ messages in thread
From: despen @ 2009-08-06 23:28 UTC (permalink / raw)
  To: help-gnu-emacs

waterloo <waterloo2005@gmail.com> writes:

> I am not a programmer.
> I have used emacs for a period of time .
> I have read `A Introduction to emacs lisp' and Orelly's Learn Gnu Emacs
> 3ed .
>
> Now I am reading `Emacs Lisp Reference' , I feel it is harder and my
> progress is slow.
>
> How to learn elisp ? Because I need to write or modify some functions.
>
> Do I need to read Emacs Lisp Reference wholely ?

You say you are not a programmer, but you want to write some programs.

Maybe if you describe what you want to do, someone can tell you if
you are over your head or maybe there is something similar to what
you want that you can make minor changes to.

You should know that you can use Emacs's keyboard macro recording
to write primitive functions.


^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2009-08-06 23:28 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-05 11:26 How to learn elisp ? waterloo
2009-08-05 11:47 ` Tim Visher
2009-08-05 11:59   ` waterloo
2009-08-05 12:54     ` Andy Stewart
     [not found]     ` <mailman.3941.1249477743.2239.help-gnu-emacs@gnu.org>
2009-08-06  9:32       ` Jyrki Tikka
2009-08-06 12:32         ` Elena
2009-08-06 14:59           ` Drew Adams
     [not found]   ` <mailman.3936.1249473586.2239.help-gnu-emacs@gnu.org>
2009-08-05 13:18     ` Anselm Helbig
     [not found] <mailman.3943.1249480576.2239.help-gnu-emacs@gnu.org>
2009-08-05 17:31 ` Barry Margolin
2009-08-05 17:53   ` Pascal J. Bourguignon
  -- strict thread matches above, loose matches on Subject: below --
2009-08-05 16:28 waterloo
2009-08-05 13:56 waterloo
2009-08-05 14:06 ` Andy Stewart
     [not found] ` <mailman.3945.1249481229.2239.help-gnu-emacs@gnu.org>
2009-08-05 15:49   ` A.Politz
2009-08-05 16:25     ` Richard Riley
     [not found] <mailman.3934.1249471596.2239.help-gnu-emacs@gnu.org>
2009-08-05 12:08 ` Xah Lee
     [not found] <mailman.3930.1249466928.2239.help-gnu-emacs@gnu.org>
2009-08-05 10:26 ` David Kastrup
2009-08-05 10:40   ` Thierry Volpiatto
2009-08-05 11:44 ` Elena
2009-08-06 23:28 ` despen
2009-08-05 10:08 waterloo
2009-08-05 11:24 ` Andy Stewart
2009-08-05 13:06 ` Drew Adams
     [not found] ` <mailman.3940.1249477629.2239.help-gnu-emacs@gnu.org>
2009-08-05 15:34   ` Pascal J. Bourguignon
2009-08-05 15:47     ` Drew Adams
     [not found]   ` <7cocqujmui.fsf@pbourguignon.informatimago.com>
     [not found]     ` <mailman.3950.1249487281.2239.help-gnu-emacs@gnu.org>
2009-08-05 17:21       ` Pascal J. Bourguignon
2009-08-05 17:45         ` Drew Adams

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).