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

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

Re: One more question about elisp


From: Francis Moreau
Subject: Re: One more question about elisp
Date: Mon, 09 Nov 2009 21:43:33 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux)

pjb@informatimago.com (Pascal J. Bourguignon) writes:

[...]

>
> THE basic concept of all the languages in the lisp family, is that of
> the uniform syntax for data and code (symbolic expressions, sexp).
>
> This allows to easily write programs to transform programs, since
> programs are normal lisp data.  Hence the notion of macro.
>
> This allows to easily extend the language to fit your needs, since the
> new operators you can implement with macros are indistinguishable from
> primitive operators.
>
>
> Apart from that, the exact primitive data types provided by a lisp
> system is rather irrelevant, given a few user level libraries
> providing the macros needed to define data abstractions you want.  And
> if these libraries don't exist, no problem, you can easily write them
> yourself.  In anycase, in a sizeable lisp program it is expected that
> you write yourself your own macros to define your own, application
> specific, language.
>
>
> So, yes, structures don't exist in the bare emacs lisp language.  But
> this doesn't matter, since there is the cl package that provides a
> defstruct macro.  If this package didn't exist, it wouldn't matter
> either, since you could easily write such a defstruct macro yourself.
>
> And in any case it doesn't matter, since in your application you'll be
> expected to define your own macro to define your own entities. (You
> may base your macro on defstruct, or you may base it on lower level
> emacs lisp vectors, or on cons cells, or whatever, it just does not
> matter).
>
>
> Read SICP!
>
>          Structure and Interpretation of Computer Programs
>          http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-4.html
>          http://swiss.csail.mit.edu/classes/6.001/abelson-sussman-lectures/
>          
> http://www.codepoetics.com/wiki/index.php?title=Topics:SICP_in_other_languages
>          http://eli.thegreenplace.net/category/programming/lisp/sicp/
>          http://www.neilvandyke.org/sicp-plt/

Ok I'll take time to read them, but I'm going to shift (again) the time
when I'll be able to customize my .emacs ;)

-- 
Francis


reply via email to

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