Hello Conor, I personally think GADTs are a great idea, don't get me wrong. I am not arguing that we should all start programming using on a Church encoding. Neither I am arguing that this encoding can replace GADTs in all cases.
Nevertheless, I believe that knowing about this encoding, in the first place, can be extremely valuable for programmers. Let's not forget that neither GADTs or multiple parameter type classes are Haskell 98! In fact, as far as I understood from the Haskell Workshop, we are a long way from those extensions becoming standard. My point is that if you are developing software, then you want to use something standard (this is, running on Hugs, Nhc, Ghc, Ehc, ...). This encoding tries to avoid extensions (not saying that it does for all cases). In the end, that is what most design patterns are: workarounds on missing language features. In this case missing features of Haskell 98 (but not GHC Haskell). Best Regards, Bruno Oliveira _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe