[prev in list] [next in list] [prev in thread] [next in thread]
List: haskell-cafe
Subject: Re: [Haskell-cafe] Haskell-Cafe Digest, Vol 106, Issue 38
From: "Richard O'Keefe" <ok () cs ! otago ! ac ! nz>
Date: 2012-06-27 4:25:20
Message-ID: 86D04D33-81B7-41D7-A840-F4AE8095088C () cs ! otago ! ac ! nz
[Download RAW message or body]
On 27/06/2012, at 3:18 PM, John Lato wrote:
> On Wed, Jun 27, 2012 at 9:15 AM, Richard O'Keefe <ok@cs.otago.ac.nz> wrote:
>>
>> On 27/06/2012, at 12:51 PM, John Lato wrote:
>>>
>>> data Tree a = Leaf a | Branch (Tree a) ( Tree a)
>>> deriving (Foldable, Show)
>>
>> While I am familiar with deriving (Show),
>> I am not familiar with deriving (Foldable),
>> which looks rather useful.
>>
>> http://www.haskell.org/ghc/docs/7.4.2/html/users_guide/deriving.html
>> just says "With -XDeriveFoldable, you can derive instances of the
>> class Foldable, defined in Data.Foldable." but it provides no details.
>>
>> Would you care to explain more about deriving (Foldable)?
>
> There's not much to explain, DeriveFoldable basically does just that;
> automatically provide an instance of the Foldable class for a data
> type.
That was sufficiently obvious, yes.
The question remains, ***WHAT*** instance?
> I think the original proposal for DeriveFoldable was from Twan
> van Laarhoven, http://www.mail-archive.com/haskell-prime@haskell.org/msg02116.html,
which goes into a great deal of detail about what deriving (Functor)
does, but none whatsoever about what deriving (Foldable) does. Even
for Functor, another 3 or 4 nontrivial examples would be nice.
> and there's a little bit of history on GHC's trac,
> http://hackage.haskell.org/trac/ghc/ticket/2953. The current
> implementation probably hasn't changed much since Simon PJ's original
> patch, although there's probably substantial overlap with ghc's
> generics these days.
That trac entry contains one sentence that seems to still apply:
"What is missing is a section in the user manual describing the changes."
It refers to section 8.5, which is now 7.5, and there is still no
adequate documentation there.
>
> As for the Foldable class itself, the docs at
> http://www.haskell.org/ghc/docs/latest/html/libraries/base/Data-Foldable.html
> are pretty good.
Yes, Foldable *is* documented.
However, that page says nothing whatever about deriving (Foldable).
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic