Stack Exchange network consists of 183 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.
+1 for the effort, but I wonder if maybe the non-standard names will be confusing to people familiar with monads? For instance, it looks like your Select is often called map and SelectMany is often called bind. (Not a criticism, just an observation)
Possibly the most important thing is to figure out how to effectively measure performance, and determine based on that data where the bottlenecks are. Haskell's performance can be very hard to accurately predict without quantitative measurements.