Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
Hey, Another comment: I feel that the Const datatype in Control.Applicative deserves to be better-known; you might mention it in your article, especially since it connects Applicative with Monoid. (In Conor's article, he calls that datatype 'Accy' and shows why it is so useful). Edsko ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
Am Dienstag, 17. Februar 2009 00:32 schrieb George Pollard: On Mon, 2009-02-16 at 15:30 +0100, Fraser Wilson wrote: Super! Also, best definition of bottom I've yet seen -- ignoring _| _, which is a party pooper. Like good code, it's short, to the point, and obviously correct. This brings up something I've thought about: On page 8, it is said that Pointed doesn't need to be checked because the theorem comes for free, but the free theorems paper was based upon total functions only; does having _|_ affect the free theorem for Pointed? This was my question to Janis Voigtländer after his HaL 3 talk. He said that the free theorem stuff also holds in the presence of _|_, it’s just a bit more complicated to prove it. At least, this is how I understood it. :-) Best wishes, Wolfgang ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
* Wolfgang Jeltsch g9ks1...@acme.softbase.org [2009-02-17 13:30:22+0100] Am Dienstag, 17. Februar 2009 00:32 schrieb George Pollard: On Mon, 2009-02-16 at 15:30 +0100, Fraser Wilson wrote: Super! Also, best definition of bottom I've yet seen -- ignoring _| _, which is a party pooper. Like good code, it's short, to the point, and obviously correct. This brings up something I've thought about: On page 8, it is said that Pointed doesn't need to be checked because the theorem comes for free, but the free theorems paper was based upon total functions only; does having _|_ affect the free theorem for Pointed? This was my question to Janis Voigtländer after his HaL 3 talk. He said that the free theorem stuff also holds in the presence of _|_, it’s just a bit more complicated to prove it. At least, this is how I understood it. :-) This paper was recently cited in -cafe; doesn't it help here? http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.59.8232 -- Roman I. Cheplyaka :: http://ro-che.info/ Don't let school get in the way of your education. - Mark Twain ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
Brent Yorgey wrote: My hope is that this will be a valuable resource to the Haskell community, especially those who are learning. Any feedback would be greatly appreciated, especially if it helps improve the article before publication. A draft can be found here Excellent work. I like the way this is a single, thorough documentation that presents all the abstractions in a single, coherant account. Kudos. Some others have suggested a set of hyperlinked articles; maybe there are actually two seperate use-cases here? The document as it stands is a great beginning-to-end account of this stuff, but perhaps a seperate reference document, nicely hyperlinked, would be nice too? There's *a lot* of type signatures to keep straight in your head, and I imagine it's quite easy to muddle the different classes up in your head while you're still new to them. I'd echo others' comments about more examples; some of these things are, by definition, seriously abstract. Concrete examples can help. (Although, obviously, picking good examples isn't as easy as it sounds...) Similarly, there are lots and *lots* of references. This is a good thing, IMHO. But I do feel that a few of them could be expanded a little more in-line. Obviously there's no point in you duplicating everything that somebody else has already said, but maybe a little more detail? On the other hand, maybe this just indicates that somebody needs to write summaries for the other topics similar to the excellent one we have here! :-D There are a few little glitches here and there. Since this is only a draft, I presume you know that. (E.g., an example uses $ before you've meantioned what it does, there's some text that says something like a b c is an arrow that takes an a and returns a c. Little things like that.) I do have one little question. Let me see if I can find the quote... Ah, here we go: The WrappedMonad and WrappedArrow constructors witness the fact that any Monad and any Arrow can be made into an Applicative. I don't really understand that sentence. Care to elaborate? ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
* On Monday, February 16 2009, Andrew Coppin wrote: I do have one little question. Let me see if I can find the quote... Ah, here we go: The WrappedMonad and WrappedArrow constructors witness the fact that any Monad and any Arrow can be made into an Applicative. I don't really understand that sentence. Care to elaborate? imho, the original wording is concise and clear, but with more common words: Arrow and Monad are special cases of Functor and Applicative, so you can make an Applicative out of any Arrow or Monad. Those newtypes have Applicative instances which you can use for an arbitrary Monad or Arrow, when they are inside that newtype. You could also clarify which part you don't understand (the meanings of constructor, witness, the classes involved, etc.). If the linked haddock documentation had links to colorized source code (present in previous versions), then looking up these instances might be easier. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
Hi Brent, I want to congratulate you on your article! An excellent piece of work which should be compulsory reading for all serious haskell programmers :) My one suggestion would be that you expand on some of the examples; for example, in the monoid section, you refer to various cool applications of Monoid, but do not include them in the paper. Dedicated readers might follow up on your (rather long!) references list, but many will not, and it is a shame if they miss the elegance that Monoid permits. I think that if you would inline some of these examples, the article would be even better :) Thanks for writing it! Edsko ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
Brent Yorgey wrote: My hope is that this will be a valuable resource to the Haskell community, especially those who are learning. Any feedback would be greatly appreciated, especially if it helps improve the article before publication. A draft can be found here: http://www.cis.upenn.edu/~byorgey/papers/typeclassopedia-draft-090216.pdf Also see my blog post for a bit more info: http://byorgey.wordpress.com/2009/02/16/the-typeclassopedia-request-for-feedback/ This is really great! Thanks for doing this. Regards, -- Jochem Berndsen | joc...@functor.nl GPG: 0xE6FABFAB ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
Wonderful, thank you! On Mon, Feb 16, 2009 at 4:29 AM, Brent Yorgey byor...@seas.upenn.edu wrote: Hi all, If you've noticed the lack of a HWN this week, that's because I've been doggedly finishing my article entitled 'The Typeclassopedia', which I have just submitted for publication in the Monad.Reader. Here's the abstract: The standard Haskell libraries feature a number of type classes with algebraic or categorical underpinnings. Becoming a fluent Haskell hacker requires intimate familiarity with them all, yet acquiring this familiarity often involves combing through a mountain of tutorials, blog posts, mailing list archives, and IRC logs. The goal of this article is to serve as a starting point for the student of Haskell wishing to gain a firm grasp of its standard type classes. The essentials of each type class are introduced, with examples, commentary, and extensive references for further reading. My hope is that this will be a valuable resource to the Haskell community, especially those who are learning. Any feedback would be greatly appreciated, especially if it helps improve the article before publication. A draft can be found here: http://www.cis.upenn.edu/~byorgey/papers/typeclassopedia-draft-090216.pdf Also see my blog post for a bit more info: http://byorgey.wordpress.com/2009/02/16/the-typeclassopedia-request-for-feedback/ happy haskelling! -Brent ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
Super! Also, best definition of bottom I've yet seen -- ignoring _|_, which is a party pooper. Like good code, it's short, to the point, and obviously correct. Thanks for this. It's great to have it all in one place, and so entertainingly presented. cheers, Fraser. On Mon, Feb 16, 2009 at 10:29 AM, Brent Yorgey byor...@seas.upenn.eduwrote: Hi all, If you've noticed the lack of a HWN this week, that's because I've been doggedly finishing my article entitled 'The Typeclassopedia', which I have just submitted for publication in the Monad.Reader. Here's the abstract: The standard Haskell libraries feature a number of type classes with algebraic or categorical underpinnings. Becoming a fluent Haskell hacker requires intimate familiarity with them all, yet acquiring this familiarity often involves combing through a mountain of tutorials, blog posts, mailing list archives, and IRC logs. The goal of this article is to serve as a starting point for the student of Haskell wishing to gain a firm grasp of its standard type classes. The essentials of each type class are introduced, with examples, commentary, and extensive references for further reading. My hope is that this will be a valuable resource to the Haskell community, especially those who are learning. Any feedback would be greatly appreciated, especially if it helps improve the article before publication. A draft can be found here: http://www.cis.upenn.edu/~byorgey/papers/typeclassopedia-draft-090216.pdfhttp://www.cis.upenn.edu/%7Ebyorgey/papers/typeclassopedia-draft-090216.pdf Also see my blog post for a bit more info: http://byorgey.wordpress.com/2009/02/16/the-typeclassopedia-request-for-feedback/ happy haskelling! -Brent ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe -- http://thewhitelion.org/mysister ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
Am Montag, 16. Februar 2009 10:29 schrieb Brent Yorgey: Hi all, If you've noticed the lack of a HWN this week, that's because I've been doggedly finishing my article entitled 'The Typeclassopedia', which I have just submitted for publication in the Monad.Reader. Good decision (not in any way suggesting that HWN isn't a great thing, too)! http://byorgey.wordpress.com/2009/02/16/the-typeclassopedia-request-for-fee dback/ happy haskelling! -Brent Hah, seems I'm the first to point out a flaw in it: Bottom of page 13: Also, note that although _ m = m would be a type-correct implementation of (), it The remainder of the sentence is missing. I'm not yet through it, but so far it has been excellent. Cheers, Daniel ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
Positively brilliant. What else can be said? Time for Brent to sign a Haskell recipes deal with O'Reilly (or whatever the next normal book should be). On Mon, Feb 16, 2009 at 4:29 AM, Brent Yorgey byor...@seas.upenn.eduwrote: Hi all, If you've noticed the lack of a HWN this week, that's because I've been doggedly finishing my article entitled 'The Typeclassopedia', which I have just submitted for publication in the Monad.Reader. Here's the abstract: The standard Haskell libraries feature a number of type classes with algebraic or categorical underpinnings. Becoming a fluent Haskell hacker requires intimate familiarity with them all, yet acquiring this familiarity often involves combing through a mountain of tutorials, blog posts, mailing list archives, and IRC logs. The goal of this article is to serve as a starting point for the student of Haskell wishing to gain a firm grasp of its standard type classes. The essentials of each type class are introduced, with examples, commentary, and extensive references for further reading. My hope is that this will be a valuable resource to the Haskell community, especially those who are learning. Any feedback would be greatly appreciated, especially if it helps improve the article before publication. A draft can be found here: http://www.cis.upenn.edu/~byorgey/papers/typeclassopedia-draft-090216.pdf Also see my blog post for a bit more info: http://byorgey.wordpress.com/2009/02/16/the-typeclassopedia-request-for-feedback/ happy haskelling! -Brent ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
On Mon, Feb 16, 2009 at 11:53 AM, Daniel Fischer daniel.is.fisc...@web.de wrote: Hah, seems I'm the first to point out a flaw in it: Bottom of page 13: Also, note that although _ m = m would be a type-correct implementation of (), it The remainder of the sentence is missing. Sorry, I've already reported this one, it's waiting for moderation on the blog post ;). -- Felipe. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: The Typeclassopedia, and request for feedback
On Mon, 2009-02-16 at 15:30 +0100, Fraser Wilson wrote: Super! Also, best definition of bottom I've yet seen -- ignoring _| _, which is a party pooper. Like good code, it's short, to the point, and obviously correct. This brings up something I've thought about: On page 8, it is said that Pointed doesn't need to be checked because the theorem comes for free, but the free theorems paper was based upon total functions only; does having _|_ affect the free theorem for Pointed? - George signature.asc Description: This is a digitally signed message part ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe