2009/1/15 Lennart Augustsson <lenn...@augustsson.net>: > Why do people think that you should be able to understand everything > without ever looking things up?
Understand, no, but "have an intuition about", very definitely yes. In mathematics (and I speak as someone with a mathematical degree, so if I caricature anyone, please excuse it as failing memory rather than intent!!!) there's a tendency to invent terminology, rather than use natural names, because new names don't have unwanted connotations - it's the need for precision driving things. In programming, the need is for *communication* and as such, using words with natural - if imprecise, and occasionally even (slightly) wrong - connotations is extremely helpful. > I'll get back to my example from the comment on the blog post. If I > see 'ghee' in a cook book I'll check what it is (if I don't know). If a significant proportion of words require me to look them up, my flow of understanding is lost and I'll either give up, end up with a muddled impression, or take far longer to understand than the recipe merits (and so, I'll probably not use that cook book again). > I'm not saying Haskell always gets naming right, all I want is to > reuse words that exist instead of inventing new ones. But you seem to be insisting that mathematical terminology is the place to reuse from - whereas, in fact, computing might be a better basis (although computing doesn't insist on the precision that maths needs, so in any "that's not precisely what I mean" argument, non-mathematical terminology starts off an a disadvantage, even though absolute precision may not be the key requirement). > (And 'monoid' is not category theory, it's very basic (abstract) algebra.) Well, I did a MSc course in mathematics, mostly pure maths including algebra, set theory and similar areas, and I never came across the term. Of course, my degree was 25 years ago, so maybe "monoid" is a term that wasn't invented then ;-)) > I don't > know any category theory, but if someone tells me that blah is an > endomorphism I'm happy to call it that, knowing that I have a name > that anyone can figure out with just a little effort. But unless you invest time researching, you can't draw any conclusions from that. If someone tells you it's a mapping, you can infer that it probably "maps" some things to one another, which gives you a (minimal, imprecise, and possibly wrong in some corner cases, but nevertheless useful) indication of what's going on. Mathematical precision isn't appropriate in all disciplines. Paul. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe