> It occasionally happens that I *know* what type is (or at least ought to be) inside > an existential type, but unfortunately GHC doesn't, and I need to get the value out. > This can be solved using dynamic types, for example you declare the datatype as
You can also use an unsafe cast operation if you know statically what the type will be, but the compiler doesn't. See for example http://www.isi.edu/~hdaume/haskell/NewBinary/TestBits.hs for an example of this. It essentially has a function which writes items of arbitrary type (in a list) to a binary memory location and then reads the back. When reading them back, the only way to know the type is to look at the type of the corresponding item on the "write" list. It relies on this to make the casting really a safe operation. _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell