Hi, I think 3 < genericLength [1..] should fail, that laziness is not we want. I can not derive ListLike instance using GHC extensions, can you provide a working example? Thanks On Tue, Aug 23, 2011 at 9:47 PM, Ivan Lazar Miljenovic < ivan.miljeno...@gmail.com> wrote:
> On 24 August 2011 11:10, bob zhang <bobzhang1...@gmail.com> wrote: > > Hi, John, there is a space leak problem in ListLike typeclass, > > in the method genericLength > > calclen !accum cl = > > calclen accum cl = > > I _think_ this may cause problems with some data types (e.g. > > http://hackage.haskell.org/packages/archive/numbers/2009.8.9/doc/html/Data-Number-Natural.html > ) that require the extra laziness (that is, you can do things like ` 3 > < genericLength [1..] ' and have it return True). > > > --- thank you for your nice library > > btw, is there any way to derive ListLike interface automatically? > > for such type : > > newtype List a = List {[a]} > > GeneralizedNewtypeDeriving can do that. > > -- > Ivan Lazar Miljenovic > ivan.miljeno...@gmail.com > IvanMiljenovic.wordpress.com > -- Best, bob
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe