Jefferson Heard wrote: > Main: No match in record selector Protein.go_terms data R = A { sa :: Int } | B { sb :: Int } sa (A 0) works (as expected). sa (B 0) gives *** Exception: No match in record selector Main.sa I think that explains your problem.