Sử dụng môn phái và vị trí trong Scheme

Dec 18 2020

Tôi đang cố gắng tìm hiểu sơ lược về FP, với sự trợ giúp của "Thuật toán cho lập trình chức năng". Ở chương 2, người viết giới thiệu các từ khóa sect<>. Một trong những quy trình trong cuốn sách sẽ là:

(define add1 (sect + <> 1))

Tôi đã sử dụng Repl.it để tính toán thủ tục. Nhưng đáng buồn thay, nó lại phát ra lỗi sau:

Error: execute: unbound symbol: "<>" []

Sau đó, tôi đã thử Racket, vì tôi đọc ở đây Repl.it sử dụng BiwaScheme không hỗ trợ đầy đủ bất kỳ tiêu chuẩn Đề án nào. Nhưng sau đó tôi gặp một lỗi khác:

sect: undefined;
cannot reference an identifier before its definition

Vậy tôi có đang làm gì sai không? Hoặc có trình soạn thảo / IDE nào khác mà tôi nên sử dụng không?

Trả lời

2 JacobvanLingen Dec 18 2020 at 20:53

Tôi đã sai, cả hai sect<>không phải là từ khóa Đề án. Trong lời nói đầu, nó được đề cập là tác giả sử dụng (afp primitives)thư viện cho các thủ tục nguyên thủy và các phần mở rộng cú pháp. Bằng cách sử dụng thư viện này, bạn nhận được một loạt các thủ tục bổ sung tại nhà máy của bạn.

Bạn có thể tải về tại đây .

1 Shawn Dec 19 2020 at 08:34

Vợt đi kèm với một add1chức năng; không cần phải xác định của riêng bạn.

Và nó hỗ trợ SRFI-26 cut , đó là secttên gọi khác, thông dụng hơn:

> (require srfi/26)
> ((cut + 1 <>) 2)
3