Tôi làm việc bằng Python. Gần đây, tôi đã khám phá ra một gói nhỏ tuyệt vời có tên là fn. Tôi đã sử dụng nó cho thành phần chức năng.Thành phần chức năng tốt hơn trong Python
Ví dụ, thay vì:
baz(bar(foo(x))))
với fn, bạn có thể viết:
(F() >> foo >> bar >> baz)(x) .
Khi tôi thấy điều này, tôi ngay lập tức nghĩ đến Clojure:
(-> x foo bar baz) .
Nhưng chú ý, trong Clojure, đầu vào nằm ở bên trái. Tôi tự hỏi nếu điều này có thể trong python/fn.
Trong khi các nhà điều hành quá tải hành vi là thú vị, với tôi đây chỉ có vẻ như là một điều xấu để làm trong mã thực. –
Không có cách nào để làm cho cú pháp chính xác đó hoạt động trong Python, nếu đó là những gì bạn đang yêu cầu. Bạn có thể ước tính nó theo nhiều cách khác nhau. Chính xác những gì là quan trọng đối với bạn cú pháp khôn ngoan? – BrenBarn
Giữ luồng từ trái sang phải.Hiện tại, đối số của hàm tổng hợp là ở cuối. Sẽ rõ ràng hơn nếu tôi có thể viết F() >> x >> foo >> bar >> baz, hoặc tương tự. –