Nhiều hoạt động phổ biến là đơn sắc . Haskell đã tận dụng sự quan sát này để làm cho nhiều hàm bậc cao hơn trở nên chung chung hơn ( Foldable
là một ví dụ).
Có một cách rõ ràng trong đó sử dụng các đơn sắc có thể được sử dụng để cải thiện hiệu suất: các lập trình viên đang khẳng định tính kết hợp của hoạt động và do đó các hoạt động có thể được song song.
Tôi tò mò liệu có cách nào khác để trình biên dịch có thể tối ưu hóa mã hay không, biết rằng chúng ta đang xử lý một monoid.