manual emacs lisp

Oct 02 2020

O que este texto significa, no nó Simple Lambda Expression Exampledo manual Emacs Lisp:

Como mostram esses exemplos, você pode usar um formulário com uma expressão lambda como seu carro para criar variáveis ​​locais e fornecer valores a elas. Nos velhos tempos do Lisp, essa técnica era a única maneira de vincular e inicializar variáveis ​​locais. Mas hoje em dia é mais claro utilizar o formulário especial letpara este fim

O uso de leté claro para mim, mas o que carro tem a ver com isso?

Respostas

3 choroba Oct 02 2020 at 18:47

A aplicação de uma expressão lambda foi usada para preencher as variáveis ​​locais na expressão, então, por exemplo, o que você pode escrever hoje como

(let ((x 12))
  (message (number-to-string (- (* 4 x) (/ x 2)))))

você escreveu como

((lambda (x)
   (message (number-to-string (- (* 4 x) (/ x 2)))))
 12)

A expressão lambda é o carro de toda a forma.