Prosty przykład pokazujący, że IO nie spełnia praw monad?
Widziałem, że o tym wspomniałemIO
nie spełnia praw monad, ale nie znalazłem prostego przykładu, który by to pokazywał. Ktoś zna przykład? Dzięki.
Edytować: Tak jakertes i n.m. wskazał, używającseq
jest trochę nielegalne, ponieważ może sprawić, że każda monada nie spełni praw (w połączeniu zundefined
). Odundefined
może być postrzegane jako obliczanie nie kończące, więc dobrze jest z niego korzystać.
Zrewidowane pytanie brzmi:Każdy zna przykład pokazujący toIO
nie spełnia praw monad, bez użyciaseq
? (A może dowód na toIO
spełnia prawa, jeśliseq
nie jest dozwolone?)