Pick an extension and add code that loops when it’s not enabled. Or when it is enabled. Or when the wrong combination of extensions are enabled.
Besides being a dig at Copilot, this is also (justified) dig at GHC Haskell.
Language extensions are not inherently bad, but having existing code in a module cease to compile (or *shudder* change runtime behavior) when an extension is switched on is bad. Not all extensions have this problem, but some very popular ones (like OverloadedStrings
) do.
Sometimes Haskell is criticized for being 2^number_of_extensions
different languages. This is generally overblown, but weird interactions between extensions make it a bit more true.