
Hi Am Dienstag, den 15.12.2020, 21:21 +0000 schrieb Richard Eisenberg:
* GHC2021 extensions should be sufficient for early-intermediate Haskellers
with sufficient, do you mean With GHC2021, early-intermediate Haskellers won’t have to enable any other extension. That is an interesting proposal. I worry that it is a hard criteria to evaluate, harder than “harmless and uncontentious”, as everybody has different opinions about what an intermediate Haskeller is, and to some it includes extensions that others don’t think of as harmless or uncontentious. In fact, doesn’t that mean to explicitly compromise on either the harmless or the uncontentious criteria? (If it weren’t, we wouldn’t need to propose a new criteria). Maybe a bit related, but as we discuss refining criteria, I wonder if we are implicitly applying the following criteria, and if we do, if we really should: GHC2021 should be educative of best practices and good style. (I worded it intentionally a bit tendentious). We have extensions that are already perfectly guarded by their own syntax (e.g. UnicodeSyntax, RecordWildCards), so by construction enabling the extension is harmless – the only effect of not enabling the extension is to add friction for those who want to use the extension, thus saying “yes, it’s there, but we want to nudge you not to use them”. Is that something we really want to do here? (I find that sentiment a bit patronizing.) There might be other arguments for exclusion, such as “readers need a loud warning to watch out for uses of this feature” (which could maybe applies to RecordWildCards, but probably not for UnicodeSyntax).
(I thought of putting this on Kialo, but it didn't seem to fit the setup there. Maybe I've erred in not just blasting ahead.)
It would probably work well as a new top-level thesis, next to the individual extensions, maybe worded as “Every extension needed by intermediate Haskellers” Cheers, Joachim -- Joachim Breitner mail@joachim-breitner.de http://www.joachim-breitner.de/