
If you take away -fglasgow-exts, then you force me to have to look up the exact name of each language extension I use every time I want to use it. Since that is annoying and breaks flow, the simpler answer is just to put a big honking language pragma at the top of all my source files with every extension I commonly use. e.g. {-# LANGUAGE TemplateHaskell, FlexibleInstances, OverlappingInstances, UndecidableInstances, CPP, ScopedTypeVariables, PatternSignatures, GADTs, PolymorphicComponents, FlexibleContexts, MultiParamTypeClasses, DeriveDataTypeable, PatternGuards #-} FYI, I grabbed the above from a source file that had been upgraded to 6.8 in which I kept adding pragmas until it compiled. Forcing the user to do this sort of thing manually every time they write code is ridiculous. Taken to its logical conclusion, why don't we also add "RecordSyntax" and "DoSyntax" etc. The compiler obviously knows which extensions are actually being used when the user uses them. If you want to warn the user that they are using non-standard options that is totally ok, but forcing the user to type them in is just really unfriendly. -Alex- Neil Mitchell wrote:
Hi Alex,
.ehs stands for extended haskell and encapsulates the 90% case of people just wanting -fglasgow-exts with a minimum of fuss.
That goes against the general GHC direction of trying to wean people off -fglasgow-exts and on to more specific language pragmas.
Thanks
Neil