2009-02-05 36 views
52

Vì vậy, mục nhập Wikipedia trên Lambda Calculus thật thú vị nhưng tôi đã hoàn thành nó. Tôi muốn lặn sâu hơn một chút và hiểu rõ hơn về Lambda Calculus.Một số tài nguyên để học Lambda Calculus là gì?

Có ai có thể giới thiệu những gì họ coi là cuốn sách hay mồi tốt nhất cho Lambda Calculus không?

+3

Xem câu hỏi math.sx [Học Lambda Calculus] (http: //math.stackexchange.com/questions/967/learning-lambda-calculus/1059 # 1059) –

+0

Tôi đã bình chọn để mở cửa trở lại, mặc dù không có chủ đề từ một số quan điểm, chủ đề thực sự là trọng tâm để lập trình và chúng ta nên nghe ý kiến ​​khác. – alinsoar

Trả lời

22

Nếu bạn đã hoàn thành với mục nhập Wikipedia, hãy theo liên kết của nó tới số Structure and Interpretation of Computer Programs trực tuyến, thực hiện các bài tập hoặc read the book.

alt text http://mitpress.mit.edu/images/products/books/0262011530-medium.jpg

+3

+1 Đây là một tài nguyên cổ điển. Đó là khóa học cho khóa học lập trình đầu tiên của tôi. –

+3

ditto. mặc dù nó là nhiều hơn về tính thực tiễn, không phải về chính thức-ness của tính toán lambda chính nó. –

+0

+1 Đọc ngay bây giờ ... thay vì 6-7 năm trước ... Đá của nhà phát triển/lập trình viên/thế giới của lập trình viên. –

13

Vâng, luôn có An Introduction to Lambda Calculus. Tôi đã thử đọc nó một vài lần, nhưng luôn luôn bị mắc kẹt. Tôi có một cảm giác dai dẳng rằng tôi đã biết hầu hết các công cụ này và có lẽ sẽ có một thời gian dễ dàng hiểu nó nếu nó được trình bày dưới dạng Lisp/Scheme hơn là toán học. Tuy nhiên, bạn có thể có may mắn hơn :)

5

Tôi cho rằng tham chiếu về chủ đề của phép tính lambda vẫn là Barendregt's book.

alt text http://ecx.images-amazon.com/images/I/41BRXJ7E7GL._SL500_AA240_.jpg

Ngoài ra nó khá nhiều phụ thuộc vào những gì "một phần" của lambda-calculus bạn quan tâm: gõ? lý thuyết chứng minh? thuật ngữ viết lại? lập trình chức năng?

Mỗi trường trong số đó là một trường, và tôi không biết bất kỳ cuốn sách nào bao gồm tất cả.

+0

chính xác, nhưng nó dành cho các lập trình viên rất tiên tiến, không dành cho người mới bắt đầu. – alinsoar

4

Hãy thử viết một trình kết nối tính toán lambda, lý tưởng trong ngôn ngữ chức năng bằng cách sử dụng cú pháp xây dựng của ngôn ngữ thay vì thông qua trình phân tích cú pháp. Điều này là đáng ngạc nhiên dễ dàng và một cách tốt để cải thiện cảm giác của bạn cho nó.

4

Gần đây tôi đã mua một cuốn sách từ Amazon có tiêu đề là "An Introduction to Functional Programming Through Lambda Calculus" bởi Greg Michaelson. Đó là phần giới thiệu về lập trình hàm và cũng giới thiệu phép tính lambda. Ấn tượng đầu tiên khá tốt. Một cuốn sách dễ đọc và dễ đọc. Here, bạn có thể tải xuống phiên bản miễn phí không có chỉ mục trong PostScript.

4

Cuốn sách thực sự khiến tôi bắt đầu sử dụng và hiểu tính toán lambda là "Đại diện và suy luận về ngôn ngữ tự nhiên" của Blackburn và Bos. Đây là một cuốn sách về xử lý ngôn ngữ tự nhiên sử dụng Prolog. Một cuốn sách khác mà bạn có thể xem là "Hiểu ngôn ngữ tự nhiên" của Allen. Cuối cùng, nếu bạn thích phép tính lambda, có thể bạn cũng sẽ thích logic kết hợp, vì các combinators có thể được định nghĩa là các biểu thức lambda đơn đối số. Đối với điều này, tôi khuyên bạn nên đặt câu đố của Smullyan, "To Mock A Mockingbird". Đến cuối cùng, ông sử dụng các combinators để xây dựng một ngôn ngữ lập trình thô sơ.

+1

Sách Blackburn và Bos hiện có sẵn trực tuyến, http://www.coli.uni-saarland.de/publikationen/softcopies/Blackburn:1997:RIN.pdf –

Các vấn đề liên quan