darcs patch: Added list operations for arrows
jules at jellybean.co.uk
Wed Nov 5 04:48:17 EST 2008
Wolfgang Jeltsch wrote:
> Another point is that filterA uses just a single letter for “arrow”. This
> concept quickly leads to ambiguities. For example, in mappend, the “m”
> stands for “monoid” while in msum, it stands for “monad”. Something like
> filterArrow would have the disadvantage that it is longer. With qualified
> imports, the user of the library can decide whether to use a single letter
> (A.filter) or something more descriptive (Arrow.filter).
I would not like this. Let me first say that I *do* understand your
point. It is certainly ugly to use these funny adhoc namespacing
techniques. But I think it's less ugly than the alternatives we have,
Our module system - or at least our module import/export system - is not
I would definitely not like to have to use
...just on grounds of verbosity. Too many characters = ugly code.
But the alternative - to use short module aliases - does not scale well.
I need to add appropriately qualified import statements to every single
module in my project. We can't reexport qualifications.
I'm interested in suggestions on how we could make our namespace
management better so that this problem is more manageable.
More information about the Libraries