Hallo! Is it possible to give a context, so that a function can have a signatu= re which=20 combines foo :: (Ix i) =3D> Array i a -> Array i a and foo :: (Ix i) =3D> UArray i a -> Uarray i a ? at the moment I have a lot of functions foo and fooU which have the sam= e body=20 but different type signatures.=20 Thanks for any comments, Andreas=