Is it written down somewhere what sort of things belong in Data.*?

I'm never quite sure what the distinction is that defines the modules under Data.*. Can anyone explain? -david

I do not know of a specific definition, but I think the heuristic for
inclusion in Data is that which is neither control nor chaos.
By 'control' I mean functions that are often "baked into" other languages,
such as exception handling, bracketing, but which can be implemented as
library functions in Haskell.
By 'chaos', I mean anything specialized to a particular field (e.g.,
biology, physics), even if it be part of computer science, e.g., software
management, computer graphics.
What's left are data types and structures that are ubiquitous (e.g., lists,
sets, maps), essential for basic communication (e.g., characters, text,
encryption, serialization, persistence) or language (but not compiler)
specific (e.g., reflection, dynamic typing, generics).
On Mon, Aug 22, 2011 at 9:50 AM, David Fox
I'm never quite sure what the distinction is that defines the modules under Data.*. Can anyone explain?
-david
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
participants (2)
-
Clifford Beshers
-
David Fox