Đã có một số phát triển liên quan đến việc sử dụng các đơn vị trong lý thuyết tính toán kể từ công trình của Eugenio Moggi. Tôi không thể cung cấp một tài khoản toàn diện, nhưng đây là một số điểm mà tôi quen thuộc, những người khác có thể đồng ý với câu trả lời của họ.
Ví dụ cụ thể của các đơn nguyên
Bạn không cần phải học lý thuyết siêu tổng quát mọi lúc. Có những ví dụ về các đơn nguyên rất thú vị và đủ phức tạp để lấp đầy toàn bộ luận án đại học.
Tôi rất thích blog của Dan Piponi, nơi ông đưa ra những ví dụ tuyệt vời về cách các đơn vị có thể được sử dụng để kết hợp lập trình chức năng và toán học. Tìm kiếm công việc của mình trên các nút thắt và bện qua các đơn vị, ví dụ.
Một ví dụ cụ thể khác về các điều đáng để nghiên cứu đã được Martin Escardo và Paulo Oliva đưa ra trong bối cảnh các chức năng lựa chọn, xem Chức năng lựa chọn của họ , Recursion Bar và cảm ứng lạc hậu , hoặc có lẽ để được quan tâm trước tiên khi đọc What Sequential Games, Định lý Tychonoff và Dịch chuyển tiêu cực kép có trong các tệp chung (các tệp Haskell và Agda được liên kết tại đây ).
Nền toán học
Monads đến từ lý thuyết thể loại và già hơn nhiều so với Eugenio Moggi. Bạn có thể nghiên cứu lý thuyết nền nếu bạn nghiêng về mặt toán học. Chẳng hạn, bạn có thể tấn công định lý đơn điệu của Beck . Một nhà khoa học máy tính lý thuyết không bao giờ có thể biết quá nhiều toán học.
Biến thể về một chủ đề
Bạn có thể nhìn vào một cái gì đó không phải là đơn nguyên.
Chẳng hạn, Thành ngữ của Connor McBride và Ross Paterson : lập trình ứng dụng với các hiệu ứng cho thấy cách người ta có thể khái quát hóa các đơn nguyên cho một cái gì đó thực sự phù hợp và sâu sắc.
Hoặc bạn có thể xem cách sử dụng comonad để mô hình hóa các hiệu ứng tính toán. Ai đó nên đề xuất một số tài liệu tham khảo cho chủ đề này, nhưng một khởi đầu tốt có thể là các slide của David Overtone .
Lý thuyết loại phương thức
Trong lý thuyết loại đồng luân, cũng như trong lý thuyết loại nói chung, các đơn nguyên xuất hiện dưới hình dạng của lý thuyết loại phương thức . Gần đây lý thuyết loại phương thức đã được xem xét trong lý thuyết loại đồng luân vì các toán tử cắt ngắn là ví dụ của các toán tử phương thức. Và sau đó là lý thuyết loại đồng luân gắn kết trong đó các toán tử phương thức (là các đơn nguyên) đóng một vai trò thiết yếu.
Hiệu ứng đại số và xử lý
[Tuyên bố từ chối trách nhiệm: thổi một phần sừng của riêng tôi ở đây.]
Cách đây một thời gian, Gordon Plotkin và John Power đã nhận xét rằng nhiều hiệu ứng tính toán không chỉ là bất kỳ đơn nguyên nào, mà là các đơn vị đặc biệt phát sinh từ các lý thuyết đại số. Điều này dẫn đến một điều trị hoàn toàn mới về hiệu ứng tính toán được gọi là hiệu ứng đại số . Sau đó Gordon Plotkin và Matija Pretnar đã giới thiệu các trình xử lý và cùng với các hiệu ứng đại số, chúng tạo thành một lý thuyết rất hay về các hiệu ứng tính toán. Một lợi thế của phương pháp này là các lý thuyết đại số có thể dễ dàng kết hợp trong khi các đơn nguyên không thể.
Bạn có thể nghiên cứu chính xác các hiệu ứng đại số liên quan đến các đơn nguyên. Bạn có thể nhìn vào cách mọi người thực hiện các hiệu ứng đại số và xử lý, nói bằng ngôn ngữ Eff hoặc trong Haskell như một thư viện . Đây là nghiên cứu hiện tại ít nhiều.