Ross,
Could you please add an "Open Issues" section where you keep track on any open issues/objections raised so far (a short summary is enough), to make sure that we deal with them all and to avoid them being rehashed. For example:
Open Issues
=========
1. Performance monads when defined in terms of monad transformers.
To ensure that defining the base monads in terms of their monad transformer version over the Identity monad the following benchmarks were run:
<some benchmarks>
These benchmarks show no performance difference.
2. More complicated type signatures due to using a monad transformer to define base monads.
<etc>
By documenting these decisions we can preempt needless rehashing of arguments and capture the consensus on these issues.
Thanks!
-- Johan