Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Thorkil Naur
Hello, On Thursday 15 January 2009 19:59, Peter Verswyvelen wrote: It is rather funny. When we are young kids, we learn weird symbols like A B C a b c 1 2 3 which we accept after a while. Then we get to learn more complex symbols like ! ? + - / and that takes some time to get

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Drew Vogel
Lennart Augustsson wrote: Why do people think that you should be able to understand everything without ever looking things up? 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). It has a precise meaning and

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Jonathan Cast
On Thu, 2009-01-15 at 10:56 -0600, John Goerzen wrote: Lennart Augustsson wrote: Most people don't understand pure functional programming either. Does that mean we should introduce unrestricted side effects in Haskell? The key is to introduce concepts to them in terms they can understand.

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Jonathan Cast
On Thu, 2009-01-15 at 21:17 +, Andrew Coppin wrote: Sebastian Sylvan wrote: On Thu, Jan 15, 2009 at 7:46 PM, Andrew Coppin andrewcop...@btinternet.com mailto:andrewcop...@btinternet.com wrote: The sad thing is, it's not actually complicated. The documentation just makes

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Thomas DuBuisson
How does forcing them to learn proposed terminology such as `Appendable' help here? Learners of Haskell do still need to learn what the new word means. The contention is that 'Appendable' is an intuitive naming that people will already have a rudimentary grasp of. This as opposed to Monoid,

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Jonathan Cast
On Thu, 2009-01-15 at 21:29 +, Andrew Coppin wrote: Jonathan Cast wrote: Where, in the history of western civilization, has there ever been an engineering discipline whose adherents were permitted to remain ignorant of the basic mathematical terminology and methodology that their

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Jonathan Cast
On Thu, 2009-01-15 at 21:59 +, Thomas DuBuisson wrote: How does forcing them to learn proposed terminology such as `Appendable' help here? Learners of Haskell do still need to learn what the new word means. The contention is that 'Appendable' is an intuitive naming that people will

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Duncan Coutts
On Thu, 2009-01-15 at 16:03 -0500, Andrew Wagner wrote: I think perhaps the correct question here is not how many instances of Monoid are there?, but how many functions are written that can use an arbitrary Monoid. E.g., the fact that there are a lot of instances of Monad doesn't make it

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Dan Piponi
On Thu, Jan 15, 2009 at 1:29 PM, Andrew Coppin andrewcop...@btinternet.com wrote: But you really *should not* need to do an undergraduate course in mathematical theory just to work out how to concat two lists. That's absurd. Some kind of balance needs to be found. Balance is good, but it's

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Steve Schafer
On Thu, 15 Jan 2009 13:21:57 -0800, you wrote: Where, in the history of western civilization, has there ever been an engineering discipline whose adherents were permitted to remain ignorant of the basic mathematical terminology and methodology that their enterprise is founded on? Umm, all of

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Dan Weston
Maybe you can explain that again? I see how the subset of Kleisli arrows (a - m a) forms a monoid (a, return . id, =), but what to do with (a - m b)? (=) is not closed under this larger set. Dan Miguel Mitrofanov wrote: Notice that monoid sounds almost *exactly* like monad. And yet, what

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread John Goerzen
On Thu, Jan 15, 2009 at 01:50:11PM -0800, Jonathan Cast wrote: On Thu, 2009-01-15 at 10:56 -0600, John Goerzen wrote: Lennart Augustsson wrote: Most people don't understand pure functional programming either. Does that mean we should introduce unrestricted side effects in Haskell?

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Duncan Coutts
On Thu, 2009-01-15 at 21:59 +, Thomas DuBuisson wrote: How does forcing them to learn proposed terminology such as `Appendable' help here? Learners of Haskell do still need to learn what the new word means. The contention is that 'Appendable' is an intuitive naming that people will

RE: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Jonathan Cast
On Thu, 2009-01-15 at 17:13 +, Sittampalam, Ganesh wrote: Lennart Augustsson wrote: Most people don't understand pure functional programming either. Does that mean we should introduce unrestricted side effects in Haskell? No, just that we should seek to minimise the new stuff they

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Miguel Mitrofanov
On 16 Jan 2009, at 01:10, Dan Weston wrote: Maybe you can explain that again? Sure. Consider the following setting: a category C and a bifunctor T : C x C - C, which is associative and have a (left and right) unit I. This is what is called monoidal category. A monoid is an object X in

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Duncan Coutts
On Thu, 2009-01-15 at 21:21 +, Andrew Coppin wrote: OK, well then my next question would be in what say is defining configuration files as a monoid superior to, uh, not defining them as a monoid? What does it allow you to do that you couldn't otherwise? I'm not seeing any obvious

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Andrew Coppin
Duncan Coutts wrote: By making a type an instance of Monoid instead of exporting emptyFoo, joinFoo functions it makes the API clearer because it shows that we are re-using an existing familiar concept rather than inventing a new one. It also means the user already knows that joinFoo must be

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Peter Verswyvelen
I'm not sure having a Monoid class is actually useful for anything - but if we must have it, there seems to be little better possible name for something so vague. IMO the Monoid class is useful since, if you define mempty and mappend, you get mconcat for free. I don't see what the problem

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Dan Piponi
On Thu, Jan 15, 2009 at 2:24 PM, Miguel Mitrofanov miguelim...@yandex.ru wrote: If, however, you category is a category of endofunctors of some category D (that is, functors D - D), and T is composition, then our monoids become monads on D: I is an identity functor, first morphism is return,

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread David Menendez
On Thu, Jan 15, 2009 at 5:27 PM, Duncan Coutts duncan.cou...@worc.ox.ac.uk wrote: On Thu, 2009-01-15 at 21:21 +, Andrew Coppin wrote: OK, well then my next question would be in what say is defining configuration files as a monoid superior to, uh, not defining them as a monoid? What does

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread pepe
On 15/01/2009, at 23:27, Duncan Coutts wrote: On Thu, 2009-01-15 at 21:21 +, Andrew Coppin wrote: OK, well then my next question would be in what say is defining configuration files as a monoid superior to, uh, not defining them as a monoid? What does it allow you to do that you

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Cale Gibbard
off the top of their head what the difference between an epimorphism and a hylomorphism is? They're not even from the same branch of mathematics. Epimorphisms are defined in category theory, as arrows which can be cancelled when they appear on the right of a composite, that is, if f is an

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Cale Gibbard
2009/1/15 Sittampalam, Ganesh ganesh.sittampa...@credit-suisse.com: Lennart Augustsson wrote: I think the documentation should be reasonably newbie-friendly too. But that doesn't mean we should call Monoid Appendable. Appendable is just misleading, since Monoid is more general than appending.

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Derek Elkins
Actually programming requires -far more- precision than mathematics ever has. The standards of formal and precise that mathematicians use are a joke to computer scientists and programmers. Communication is also more important or at least more center stage in mathematics than programming.

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Cale Gibbard
If you're learning Haskell, which communicates the idea more clearly: * Appendable or * Monoid I can immediately figure out what the first one means. With the second, I could refer to the GHC documentation, which does not describe what a Monoid does. Or read a wikipedia article

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Cale Gibbard
While you're absolutely correct and I agree with you, to be fair, essentially all mathematicians have a sense of rigourisability (whether they recognise it or not), which is a peculiar standard that they apply to everything they hear or read. The level of rigour at which mathematicians communicate

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread David Menendez
On Thu, Jan 15, 2009 at 5:32 PM, Andrew Coppin andrewcop...@btinternet.com wrote: As an aside, the integers form two different monoids. Haskell can't [easily] handle that. Does anybody know of a language that can? Some of the ML-derived languages can do that. Essentially, your code takes

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Jonathan Cast
On Thu, 2009-01-15 at 16:16 -0600, John Goerzen wrote: On Thu, Jan 15, 2009 at 01:50:11PM -0800, Jonathan Cast wrote: On Thu, 2009-01-15 at 10:56 -0600, John Goerzen wrote: Lennart Augustsson wrote: Most people don't understand pure functional programming either. Does that mean we

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Manlio Perillo
John Goerzen ha scritto: Hi folks, Don Stewart noticed this blog post on Haskell by Brian Hurt, an OCaml hacker: http://enfranchisedmind.com/blog/2009/01/15/random-thoughts-on-haskell/ It's a great post, and I encourage people to read it. I'd like to highlight one particular paragraph:

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Max Rabkin
On Thu, Jan 15, 2009 at 3:16 PM, Cale Gibbard cgibb...@gmail.com wrote: However, Appendable carries baggage with it which is highly misleading. Consider, for instance, the monoid of rational numbers under multiplication (which, by the way, is quite useful with the writer transformed list monad

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Jonathan Cast
On Thu, 2009-01-15 at 15:25 -0800, Max Rabkin wrote: On Thu, Jan 15, 2009 at 3:16 PM, Cale Gibbard cgibb...@gmail.com wrote: However, Appendable carries baggage with it which is highly misleading. Consider, for instance, the monoid of rational numbers under multiplication (which, by the

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Dan Doel
On Thursday 15 January 2009 6:21:28 pm David Menendez wrote: On Thu, Jan 15, 2009 at 5:32 PM, Andrew Coppin andrewcop...@btinternet.com wrote: As an aside, the integers form two different monoids. Haskell can't [easily] handle that. Does anybody know of a language that can? Some of the

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Cale Gibbard
2009/1/15 Andrew Coppin andrewcop...@btinternet.com: OK, well then my next question would be in what say is defining configuration files as a monoid superior to, uh, not defining them as a monoid? What does it allow you to do that you couldn't otherwise? I'm not seeing any obvious advantage,

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Derek Elkins
On Thu, 2009-01-15 at 14:11 -0600, John Goerzen wrote: On Thu, Jan 15, 2009 at 07:46:02PM +, Andrew Coppin wrote: John Goerzen wrote: If we *must* insist on using the most obscure possible name for everything, can we at least write some documentation that doesn't require a PhD

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Derek Elkins
On Thu, 2009-01-15 at 21:59 +, Thomas DuBuisson wrote: How does forcing them to learn proposed terminology such as `Appendable' help here? Learners of Haskell do still need to learn what the new word means. The contention is that 'Appendable' is an intuitive naming that people will

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Derek Elkins
On Thu, 2009-01-15 at 18:21 -0500, Cale Gibbard wrote: While you're absolutely correct and I agree with you, to be fair, essentially all mathematicians have a sense of rigourisability (whether they recognise it or not), which is a peculiar standard that they apply to everything they hear or

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread John Goerzen
Derek Elkins wrote: No one doubts that there is room for improvement. However, the direction is better documentation, not different names. Better names is fine, but I have not heard any remotely convincing alternative for any of the above terms. After thinking about it, I think you are

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Luke Palmer
On Thu, Jan 15, 2009 at 9:15 AM, John Goerzen jgoer...@complete.org wrote: If you're learning Haskell, which communicates the idea more clearly: * Appendable or * Monoid But Appendable is wrong. merge :: Ord a = [a] - [a] - [a] merge [] ys = ys merge xs [] = xs merge (x:xs) (y:ys) | x

RE: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Michael Giagnocavo
Your talk of undergraduate courses to concat two lists isn't grounded in any kind of reality, muddies the waters, and probably scares people away from Haskell by giving the impression that it's much harder than it is. I've been studying Haskell a bit to understand and learn more about functional

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Luke Palmer
On Thu, Jan 15, 2009 at 7:02 PM, Michael Giagnocavo m...@giagnocavo.netwrote: Your talk of undergraduate courses to concat two lists isn't grounded in any kind of reality, muddies the waters, and probably scares people away from Haskell by giving the impression that it's much harder than it

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Dan Weston
Richard Feinman once said: if someone says he understands quantum mechanics, he doesn't understand quantum mechanics. But what did he know... Luke Palmer wrote: On Thu, Jan 15, 2009 at 7:02 PM, Michael Giagnocavo m...@giagnocavo.net mailto:m...@giagnocavo.net wrote: Your talk of

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Bertram Felgenhauer
Andrew Wagner wrote: I think perhaps the correct question here is not how many instances of Monoid are there?, but how many functions are written that can use an arbitrary Monoid. E.g., the fact that there are a lot of instances of Monad doesn't make it useful. There are a lot of instances of

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread John A. De Goes
+1 to that Regards, John On Jan 15, 2009, at 4:10 PM, Cale Gibbard wrote: 2009/1/15 Sittampalam, Ganesh ganesh.sittampa...@credit-suisse.com: Lennart Augustsson wrote: I think the documentation should be reasonably newbie-friendly too. But that doesn't mean we should call Monoid

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Cory Knapp
Perhaps as a math/CS major I'm a bit biased here, but as a haskell neophyte, I think my opinion is at least somewhat relevant... The immediate problem is certainly documentation. No one would groan more than once after hearing a term from abstract math if there was sufficient Haskell-oriented

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Jonathan Cast
On Thu, 2009-01-15 at 17:06 -0500, Steve Schafer wrote: On Thu, 15 Jan 2009 13:21:57 -0800, you wrote: Where, in the history of western civilization, has there ever been an engineering discipline whose adherents were permitted to remain ignorant of the basic mathematical terminology and

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Creighton Hogg
On Thu, Jan 15, 2009 at 10:18 PM, Jonathan Cast jonathancc...@fastmail.fm wrote: On Thu, 2009-01-15 at 17:06 -0500, Steve Schafer wrote: On Thu, 15 Jan 2009 13:21:57 -0800, you wrote: Where, in the history of western civilization, has there ever been an engineering discipline whose adherents

Re: [Haskell-cafe] Comments from OCaml Hacker Brian Hurt

2009-01-15 Thread Thomas Davie
On 15 Jan 2009, at 16:34, John Goerzen wrote: Hi folks, Don Stewart noticed this blog post on Haskell by Brian Hurt, an OCaml hacker: http://enfranchisedmind.com/blog/2009/01/15/random-thoughts-on- haskell/ It's a great post, and I encourage people to read it. I'd like to highlight one

<    1   2