Ralf,
I've read the paper (surprisingly it's quite new - Jun 2004) and your
sample. Here are several comments:
1. It looks like your HList is basically a sugarized version of
data AnyMyInterface = Impl1 MyImplementation1 | Impl2 MyImplementation2
with the same drawback: you require me to
{-# OPTIONS -fglasgow-exts #-}
{-# OPTIONS -fallow-overlapping-instances #-}
{-
Hi Mike,
You might heterogeneous lists useful.
http://www.cwi.nl/~ralf/HList/
See the treatment of your example below.
Cheers,
Ralf
-}
import HList
import HTypeDriven
-- These are your two implementations.