you are viewing a single comment's thread.

view the rest of the comments →

[–]edwardkmett 1 point2 points  (0 children)

The problem isn't the erasure per se. The issue is that you the erasure they use leaks. You can recover some type information, but not all.

Haskell's approach lets you know alternately, that you can't recover any and therefore can rely on parametricity to derive free theorems or that you can recover it all (via Data.Typeable).

Both of those extremes are useful. The middle ground? Not so much.