Closed NANASHI0X74 closed 11 months ago
The current implementation is still out of date, I think:
IO.prototype.join = () => this.unsafePerformIO();
From: https://mostly-adequate.gitbook.io/mostly-adequate-guide/ch09
According to appendix_b (https://mostly-adequate.gitbook.io/mostly-adequate-guide/appendix_b), it should be:
IO.prototype.join = new IO(() => this.unsafePerformIO().unsafePerformIO());
I noticed today that the IO.join() method seemed off, so I searched in issues and PRs whether someone else had spoken about this, subsequently I found this PR: https://github.com/MostlyAdequate/mostly-adequate-guide/pull/265 which had fixed the issue and this commit: https://github.com/MostlyAdequate/mostly-adequate-guide/commit/f1608d399c4045c0fe2b18824464c91e3afe9645 which reintroduced the error.
This PR is a cherry-pick of the old PR mentioned above