1 --!!! two sets of mutually-recursive blobs:
2 --!!! f, g, h are mut rec
3 --!!! i, j, k are mut rec
6 data Foo a = Foo a Int Int
8 (f1@(f2@(f3@f)), 1) = g 1 1
9 (i1@(i2@(i3@i)), 1) = j 1 1
11 (Foo g 1 2) = (h, 1, 1, 2)
12 (Foo j 1 2) = (k, 1, 1, 2)
14 (~ ~ ~ ~h, 1, 2, 3) = f 3
15 (~ ~ ~ ~k, 1, 2, 3) = i 3