Reform of the Monad, and Disruptive Change
Howard B. Golden
howard_b_golden at yahoo.com
Fri Feb 4 16:37:29 CET 2011
John Smith <voldermort at hotmail.com> asked:
> What is the best way out of this deadlock?
My suggestions:
* If possible, make the change optional. As an example, create a second (third,
etc.) Prelude with the new features without abandoning the current Prelude. Let
the user choose the Prelude he/she wants via a pragma or compiler option. Then
developers can vote with their feet (fingers?). If the new Prelude is buggy, it
will be easy to try something else. You might call this "intellectual free
enterprise."
* Do everything possible to create adapters to make upgrading existing code to
the new Prelude. Thus, if a new Prelude is adopted widely, existing code will be
easy to incorporate with minimal source changes.
* Avoid disruptive changes by letting the user decide. Once there is a clear
consensus based on significant usage, then the new Prelude can be blessed by
some committee (if desired). However, don't abandon the previous Prelude as an
option, ever. Textbooks might teach only the newer Prelude, but old code would
still work.
* Recognize that the Haskell user base at this time shouldn't be constrained by
mandated changes, but should be encouraged to experiment and evolve the
libraries.
Cheers,
Howard
More information about the Haskell-prime
mailing list