I think I got this idea from JHC, but I'm unable to find it documented in the JHC manual at the moment.  The idea is that when _ appears on the RHS of an equation it is another name for undefined.

Here is a hypothetical example, inspired by code I've seen in FFI definitions:

\begin{code}
{-# LANGUAGE EmptyDataDecls #-}
data Bar
instance Storable Bar where
  sizeOf _ = sizeOf #{size struct Bar}
  alignment _ = alignment (_ :: CDouble) -- here we could have just as succinctly said alignment (1 :: CDouble)

data Foo -- the struct Foo on the C side contains a Bar

instance Storable Foo where
  sizeOf _ = sizeOf #{size struct Foo}
  alignment _ = alignment (_ :: Bar) -- we can't instantiate a Bar
\end{code}

Is this something people would be interested in having as an extension in GHC?  Or is it just too fluffy for anyone to really care?

Thanks,
Jason