Saya hanya membaca di lambda calculus untuk "mengenalnya". Saya melihatnya sebagai bentuk komputasi alternatif sebagai lawan dari Mesin Turing. Ini adalah cara menarik untuk melakukan sesuatu dengan fungsi / reduksi (secara kasar). Beberapa pertanyaan terus mengganggu saya:
- Apa gunanya kalkulus lambda? Mengapa harus melalui semua fungsi / reduksi ini? Apa tujuannya?
- Akibatnya saya bertanya-tanya: Apa yang sebenarnya dilakukan lambda calculus untuk memajukan teori CS? Kontribusi apa yang memungkinkan saya memiliki momen "aha" untuk memahami kebutuhan akan keberadaannya?
- Mengapa kalkulus lambda tidak tercakup dalam teks tentang teori automata? Rute umum adalah melalui berbagai automata, tata bahasa, Turing Machines, dan kelas kompleksitas. Kalkulus Lambda hanya termasuk dalam silabus untuk kursus gaya SICP (mungkin tidak?). Tetapi saya jarang melihatnya sebagai bagian dari kurikulum inti CS. Apakah ini menyiratkan itu tidak terlalu berharga? Mungkin tidak dan saya mungkin melewatkan sesuatu di sini?
Saya sadar bahwa bahasa pemrograman fungsional didasarkan pada kalkulus lambda, tetapi saya tidak menganggapnya sebagai kontribusi yang valid, karena ia dibuat jauh sebelum kami memiliki bahasa pemrograman. Jadi, sungguh apa gunanya mengetahui / memahami lambda calculus, apakah aplikasi / kontribusinya terhadap teori?
Functional Programming
membahas Haskell dan sedikit Lisp. Penggantinya adalah Principles of Programming Languages
, yang menggunakan ML dan memperkenalkan kalkulus lambda. Seperti yang ditunjukkan oleh beberapa jawaban, itu benar-benar tempat kalkulus lambda berada: di kelas tentang bahasa pemrograman, pengetikan, dll.