Tôi không thể sử dụng các hàm lôgic trên một loạt các phép toán trong Clojure (1.2). Cả các công trình sau đây do các chức năng logic là macro:"giảm" hoặc "áp dụng" bằng cách sử dụng các hàm lôgic trong Clojure
(reduce and [... sequence of bools ...])
(apply or [... sequence of bools ...])
Các thông báo lỗi nói rằng tôi "không thể lấy giá trị của một vĩ mô: #'clojure.core/and
". Làm cách nào để áp dụng các hàm logic (macro) này mà không cần viết mã soạn sẵn?
Chính xác những gì tôi đang tìm kiếm. –
Liên kết tới tài liệu, ['mọi?'] (Http://clojuredocs.org/clojure_core/clojure.core/every_q) và ['some'] (http://clojuredocs.org/clojure_core/clojure.core/some). –
'một số' không hoạt động tốt cho' hoặc' khi nó trả về 'nil' nếu biểu thức sẽ đánh giá thành' false'. Sử dụng '# (một số? (Một số đúng?%))' Hoặc '# (không phải (mỗi? Sai?%))' Không thêm nhiều vào imo dễ đọc và cả hai không hoạt động quá tốt với các chuỗi-macro yêu cầu thêm parens xung quanh lambda. Ngoài ra 'một số?' Chỉ có sẵn từ v1.6. –