3 ms·
I would add pragmas. People like to say there is just one implementation of Haskell and it's ghc, but there's actually n different ones, with n being the numbe
by hota_mazi 10y ago
I would add pragmas.
People like to say there is just one implementation of Haskell and it's ghc, but there's actually n different ones, with n being the number of combinations of pragmas that exist.
Each combination you use in your source is a different version of Haskell.
- harpocrates 10y agoWhile I see how this at first appears to be a problem (when I started with Haskell I sure thought of it as one), it turns out that language-pragma filled code can be mixed with vanilla code too without problem. The pragmas usually just expose more of the inner representation of GHC (I'm thinking things like FlexibleInstances, TypeApplication, RankNTypes and not the pathologically broken and perhaps logically unsound ImpredicativeTypes). So it really is just GHC you are shipping (and not GHC + which extensions are enabled).
- aninhumer 10y agoEh, I think in practice it's more like there's one large language, but you have to enable some of the features with pragmas.