On Sat, Aug 16, 2008 at 02:46:31AM -0300, Han-Wen Nienhuys wrote: > Lambda calculus is the reason that lambda is called like that, but it > is as bad a name as cons/cdr/car. Scheme is a cleaned up version of > LISP, but they left those warts in.
Why is it a bad name? Scheme is a programming language. Its users are programmers. Programmers (at least the good ones) know what the lambda calculus is, so know to expect anonymous functions when they see "lambda". Anonymous functions are, whatever keyword you use to make them happen, still something the user of the programming language needs to learn to use. Using "lambda" means that people who have never heard of the lambda calculus (who are not the primary users) need to learn something new. Not using "lambda" would mean that *everyone* needs to learn something new. Anyway, don't forget that in the simple case where your anonymous function doesn't use any variables other than its parameter, you can just use a named function instead, and avoid "lambda" completely. That is, if you can rewrite your anonymous function so it looks like (lambda (a b c ...) (some-function a b c ...)) you can replace it with some-function You might have to write some-function yourself. (Note that the ... means it doesn't matter how many parameters you have, it's not a part of the syntax.) -- It's so hard to see the Sun with the truth in your eyes. http://surreal.istic.org/ Krogoths are for defence.
signature.asc
Description: Digital signature
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user