I think the GHC directives are what hurts Haskell the most. At this point they should just embrace the GHC extensions and make it the "official" Haskell.
Having to enable them in the code is just a hassle. Just make it official and be done with it, just roll it into the language.
Do GHC2021 and GHC2024 not do what you want?