On 18 Jul 2011, at 21:26, Evgenii Rudnyi wrote:
On 18.07.2011 14:21 ronaldheld said the following:
Bruno:
I do not know LISP. Any UD code written in Fortran?
Ronald
Very good book to learn LISP is
http://mitpress.mit.edu/sicp/full-text/book/book.html
A great classic book indeed. Very good indeed.
For the beginners, "The Little Lisper" by Daniel P. Friedman is a chef-
d'oeuvre of pedagogy.
I don't find any version online, alas.
Here are reference for its third edition (but it looks out of print!):
http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=4879
Just click Next page, read and so on. By the way, List is much nicer
than Fortran. I have learned Lisp after Fortran - C - C++ and I
should say that I love Lisp (well, I prefer Mathematica - it is a
Lisp with a human face).
I guess we have a different conception of what is a human face :)
I do have problems with the syntax of Mathematica, but it might be
that I have never succeeded in compiling it in the right way. It might
be due also to the fact that I use cheap versions, I dunno.
Yet, the real programmer must start with Lisp. If she will be scared
by too many brackets, for example
(define (fast-expt b n)
(cond ((= n 0) 1)
((even? n) (square (fast-expt b (/ n 2))))
(else (* b (fast-expt b (- n 1))))))
then she should forget about programming.
Of course, the brackets are what makes the syntax of Lisp so
transparent. Indeed the programs have the structure of the data-
structures handled naturally by Lisp (the lists). This makes meta-
programming very easy. The "Gödel number" of (define ...) is just
(quote (define ...)). Together with its functional nature, it makes
Lisp particularly easy for (third person) self-reference. Lisp is very
close, in spirit, with the combinators or the lambda calculus, on
which I have talked about regularly.
Bruno
http://iridia.ulb.ac.be/~marchal/
--
You received this message because you are subscribed to the Google Groups
"Everything List" group.
To post to this group, send email to everything-list@googlegroups.com.
To unsubscribe from this group, send email to
everything-list+unsubscr...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/everything-list?hl=en.