manual cadel emacs

Oct 02 2020

Apa maksud teks ini, dalam simpul Simple Lambda Expression Exampledari manual Emacs Lisp:

Seperti yang ditunjukkan contoh berikut, Anda dapat menggunakan formulir dengan ekspresi lambda sebagai mobilnya untuk membuat variabel lokal dan memberinya nilai. Di masa lalu Lisp, teknik ini adalah satu-satunya cara untuk mengikat dan menginisialisasi variabel lokal. Namun sekarang, lebih jelas menggunakan bentuk khusus letuntuk tujuan ini

Penggunaannya letjelas bagi saya, tetapi apa hubungannya mobil dengan ini?

Jawaban

3 choroba Oct 02 2020 at 18:47

Penerapan ekspresi lambda digunakan untuk mengisi variabel lokal dalam ekspresi, jadi misalnya apa yang hari ini Anda tulis sebagai

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

Anda menulis sebagai

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

Ekspresi lambda adalah mobil dari keseluruhan bentuk.