You can pattern match on types - as I have been having much fun with recently ... you use multi-parameter type classes (with optional functional dependancies) to match types. Regards, Keean.