__color__,__group__,ticket,summary,component,milestone,type,created,_changetime,_description,_reporter
1,benl,2,Check class instances against their definitions.,Type Inferencer,0.1.3,defect,2009-05-12T11:58:37Z+0100,2010-10-04T03:12:49Z+0100,"We don't currently check whether a type class instance is valid wrt its definition. Unsafe program sometimes make it through the core type checker and sometimes not.

{{{T2-CheckInstance}}} contains an area function that has a larger closure than the definition, but it is silently accepted. I've seen other programs like this be caught by the core type checker.
",benl
1,benl,155,"PANIC ""mergeClasses: classes have differing kinds"" in my Hashtable first cut",Core Type Checker,0.1.3,defect,2010-02-01T21:15:10Z+0000,2010-02-15T01:24:46Z+0000,"{{{
[1 of 1] Compiling Hashtable
ddc: PANIC in Type.Squid.Class
        mergeClasses: classes have differing kinds
            cids = [720, 721]
            ks   = [*, * -> *]
        
        Please report this bug to the maintainers at:
            http://trac.haskell.org/ddc
            or by emailing disciple-cafe@googlegroups.com
}}}
",blackh
1,erikd,7,Merge projection dictionaries from different modules.,Source Desugarer,0.1.3,defect,2009-05-12T12:15:45Z+0100,2010-03-06T02:17:55Z+0000,"Projection dictionaries are open, so we should be able to give instance functions in multiple modules. ",benl
1,erikd,172,Lexer generates incorrect token sequence,Source Parser,0.1.3,defect,2010-03-05T10:03:08Z+0000,2010-03-07T10:48:03Z+0000,"For the function:

{{{
trick2 xs = [ (x, y)
		| x <- xs
		, let y = x `mod` 3 ]
}}}

the lexer generates a token sequence (ignoring other tokens) of ""[ { ] }"" where the brackets don't match up properly. Changing the code to:

{{{
trick2 xs = [ (x, y)
		| x <- xs
		, let y = x `mod` 3
		]
}}}

generates the correct sqeuence of ""[ { } ]"".

",erikd
1,erikd,173,Faliure to parse type annotations within list defintion,Source Parser,0.1.3,defect,2010-03-06T05:36:12Z+0000,2010-03-06T05:36:24Z+0000,"The following parses correctly under GHC bug fails with DDC

{{{
main = println $ show [ (1::Int) .. 10 ]
}}}
",erikd
4,erikd,161,Implement let qualifiers for list comprehensions,Source Parser,0.1.3,enhancement,2010-02-21T10:56:57Z+0000,2010-03-07T10:45:48Z+0000,"Eg for a solution to the 4th Euler problem.

{{{
solution1
 = maximum 	
	[ x 	| y <- [100..999]
		, z <- [y..999]
		, let x = y * z
		, let s = show x
		, s == reverse s ]
}}}",benl
7,steggles,107,Definition order should not be important in  where block,Source Semantics,_|_,enhancement,2009-08-18T10:17:36Z+0100,2010-09-07T12:26:43Z+0100,"Two almost identical functions below. The first parses successfully, the second fails.

{{{
compileSuccess :: Int -> Int
compileSuccess x =
	x + y
  where
    -- This works becuase 'z' is defined before it is used.
    z = 4
    y = 3 + z

compileFail :: Int -> Int
compileFail x =
	x + y
  where
    -- Using 'z' before it is defined fails.
    y = 3 + z
    z = 4
}}}

",erikd
