[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: update intro to Emacs Lisp programming
From: |
Siraphob (Ben) Phipathananunth |
Subject: |
Re: update intro to Emacs Lisp programming |
Date: |
Sun, 20 May 2018 17:49:50 +0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 |
Richard Stallman wrote:
This book is intentionally addressed to people who don't know how to
program. That is its purpose. We recommend people start learning to
program using this book.
I support this purpose. Since Emacs is a prime example of the benefits of
using free software (view source, share, modify, contribute), it is even better
introducing this idea to newcomers to programming so that they may see the
value of free software.
This project feels similar to when the SICP book (Structure and Interpretation
of Computer Programs, a course at MIT that taught Scheme), was overhauled and
brought to a more modern form.
The overhauled SICP book is available in Texinfo format (which works inside
Emacs).
http://www.neilvandyke.org/sicp-texi/
Alternatively, it was also converted to PDF HTML5 formats, which allows for
convenient viewing.
https://github.com/sarabander/sicp-pdf
As Richard said, it would be ideal to have the Introduction to Emacs Lisp serve
as an introduction to programming. SICP's first chapter does this job well,
however it is quite mathematically oriented and some of the exercises are
difficult for new people.
Some of the exercises in SICP are easily ported to Emacs Lisp, and we can omit
sections that focus on Scheme specifically, such as the metacircular evaluator,
register machines etc.
SICP also lacks "fun" exercises, so we might adapt some from various sources, for
instance, the book "Land of Lisp". Some fun exercises could be creating a number
guessing game, a dunnet-like text adventure, and more. Small enough to be doable, while giving
instant feedback. Some of the exercises could be directly related to customizing Emacs, such as
writing a mode to color text randomly as one types.
Jean-Christophe Helary wrote:
4) there is a need to add a lot more exercices so that the learner can explore a lot more
from what has been explained, possibly exercices that relate to "modern"
computing domains
For some of the more "modern" exercises it would be helpful to adapt some ideas
sources such as Practical Common Lisp. For instance, using record types in Emacs Lisp to
create a database of CDs or books. Incidentally the book attempts to teach a bit of
Emacs' keybindings, modes, and file navigation as well, but in a very limited fashion.
Richard Stallman wrote:
We still need free books to learn programming from.
This book is the one we have.
It needs to be checked to see what changes are needed
to correspond to the current Emacs,
Many programming books fail to properly address the barrier of using code
editing tools, and even worse, sometimes recommend non-free programs, whereas
this need not happen with the Introduction to Emacs Lisp, since customizing the
editor goes with learning the language. We ultimately should provide the book
as a standalone document, and an interactive tutorial in Emacs.
Jean-Christophe Helary wrote:
1) What Richard requested and that is relatively urgent: the Emacs Lisp
Introduction should be first checked for factual errors (an expert is needed
there),
I agree with this. A larger rewrite will be necessary at some point to make
the Introduction to Emacs Lisp more suitable for learning programming, but for
now, mistakes (in the code, prose or otherwise) should be fixed swiftly.
--
Siraphob (Ben) Phipathananunth
- Re: update intro to Emacs Lisp programming, (continued)
- Re: update intro to Emacs Lisp programming, Richard Stallman, 2018/05/17
- Re: update intro to Emacs Lisp programming, Jean-Christophe Helary, 2018/05/18
- Re: update intro to Emacs Lisp programming, Van L, 2018/05/18
- Re: update intro to Emacs Lisp programming, Marcin Borkowski, 2018/05/18
- Re: update intro to Emacs Lisp programming, Van L, 2018/05/18
- Re: update intro to Emacs Lisp programming, Jean-Christophe Helary, 2018/05/18
- Re: update intro to Emacs Lisp programming, Van L, 2018/05/19
- Re: update intro to Emacs Lisp programming, Richard Stallman, 2018/05/19
- Re: update intro to Emacs Lisp programming, Marcin Borkowski, 2018/05/19
- Re: update intro to Emacs Lisp programming, Jean-Christophe Helary, 2018/05/20
- Re: update intro to Emacs Lisp programming,
Siraphob (Ben) Phipathananunth <=
- Re: update intro to Emacs Lisp programming, Van L, 2018/05/20
- Re: update intro to Emacs Lisp programming, Richard Stallman, 2018/05/21
- Re: update intro to Emacs Lisp programming, Eli Zaretskii, 2018/05/21
- Re: update intro to Emacs Lisp programming, Siraphob (Ben) Phipathananunth, 2018/05/21
- Re: update intro to Emacs Lisp programming, Richard Stallman, 2018/05/21
- Re: update intro to Emacs Lisp programming, Eli Zaretskii, 2018/05/21
- Re: update intro to Emacs Lisp programming, Richard Stallman, 2018/05/21
- Re: update intro to Emacs Lisp programming, Richard Stallman, 2018/05/21
- Re: update intro to Emacs Lisp programming, Van L, 2018/05/21
- Re: update intro to Emacs Lisp programming, Richard Stallman, 2018/05/21