2013-03-12 14 views
6

Con questo frammento, e smallcheck-1.0.1Generics Serie Generating Infinite Lista

data Foo = A | B | Pair Foo Foo deriving Show 
deriving instance Generic Foo 
instance (Monad m) => Serial m Foo 

allora questo

list 1 (series :: Series Identity Foo) 

genera un elenco apparentemente infinito.

Qualcosa che pensavo fosse equivalente fino a quando smallcheck-0.6.1 genera solo [A, B] ed è ciò che mi aspetterei.

Si tratta di una modifica prevista per Smallcheck Series e, in tal caso, esiste un modo semplice per ripristinare il comportamento 0.6.1.

ci sono programmi compilabili per dimostrare questo qui: http://hpaste.org/83927

risposta

5

Sicuramente un bug - grazie per la segnalazione. Ho appena caricato la v1.0.2 che la ripara.

Inoltre, ho registrato un issue come promemoria per testare istanze generiche.

+0

confermato 1.0.2 lo risolve. la mia sanità mentale viene ripristinata. –