all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Xah <xahlee@gmail.com>
To: help-gnu-emacs@gnu.org
Subject: Re: how to learn lisp
Date: Wed, 22 Oct 2008 00:37:57 -0700 (PDT)	[thread overview]
Message-ID: <e2ca6c88-507e-404b-896f-018f552b7dc8@q35g2000hsg.googlegroups.com> (raw)
In-Reply-To: c481c189-96ab-4549-98a0-f37594179b23@y29g2000hsf.googlegroups.com

On Oct 20, 10:36 pm, TheFlyingDutchman <zzbba...@aol.com> wrote:
> On Oct 12, 9:34 pm, "jacklisp" <jackl...@gmail.com> wrote:
>
> > how to learn lisp
>
> I have studied the Emacs Lisp manual on more than one occassion and
> never got much past evaluating (+ 2 2) in a buffer. But recently I was
> looking to modify my .emacs file and came across something that I
> wasn't aware of that I find very helpful for learning the Lisp part of
> Emacs Lisp (as opposed to the "Emacs API" part of Emacs Lisp). So if
> you haven't seen it yet, there is a -batch option for starting up
> Emacs. If you create an Emacs Lisp file, for example - hello_world.el
> - you can then execute this file in the same manner you would execute
> a Perl/Python/Ruby/Tcl script by typing "emacs -batch -l
> hello_world.el". In batch mode the (message ... ) function acts like a
> print/printf statement in other languages, so you can start with
> (message "%s" "hello world") and go on from there the way you
> typically would learning a standalone language.

i actually don't find batch mode useful for elisp dev. Some other
suggested the interactive command line mode (Alt+x ielm), but i don't
find it useful neither. I actually never used them for learning elisp
or elisp dev.

I find that, having elisp code in a buffer, and the ability to
evaluate any code in the buffer, in whole or in parts i choose, and
being able to interactively exam variables and values, is more
helpful. I both learned elisp and do elisp dev this way.

I use batch mode when i want to run a already written elisp script for
text processing. The ielm i never used.

Note: the batch mode is the basic style of running programs supported
by almost all langs. The interactive input/output is supported by
Python, Common Lisp, many Scheme Lisp, etc langs. Typically functional
langs.
The eval any parts in buffer is often called notebook, and is the
typical way of running programs in MATLAB, mathCAD, Mathematica ...

  Xah
∑ http://xahlee.org/

  parent reply	other threads:[~2008-10-22  7:37 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-13  4:34 how to learn lisp jacklisp
2008-10-13  8:01 ` Jordan Greenberg
2008-10-13 13:52 ` William Case
2008-10-21  5:36 ` TheFlyingDutchman
2008-10-21  6:57   ` Tim X
2008-10-22  0:25     ` Xavier Maillard
     [not found]     ` <mailman.1753.1224635369.25473.help-gnu-emacs@gnu.org>
2008-10-22  2:12       ` TheFlyingDutchman
2008-10-22  5:59         ` Kevin Rodgers
2008-10-22  7:37   ` Xah [this message]
2008-10-22 11:29     ` Javier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e2ca6c88-507e-404b-896f-018f552b7dc8@q35g2000hsg.googlegroups.com \
    --to=xahlee@gmail.com \
    --cc=help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.