GHC command line errors can be horrible, lets make them as bad as possible. To disincentivize very long programs use the following formula to calculate your "score".
(# of bytes of GHC output) / 2^(8 + # of bytes of code)
Template Haskell is banned as there is probably a TH configuration where you can replicate an error f(n) times where f is an arbitrary fast growing computable function. CPP and GHC options are banned for similar reasons.
GHC output should be computed using this release of GHC 8.6.3.
To calculate the bytes of GHC output run:
ghc -hide-all-packages -package base Main.hs |& wc -c
The following is an example submission:
main = print (1 + True)
[1 of 1] Compiling Main ( Main.hs, Main.o ) Main.hs:1:15: error: • No instance for (Num Bool) arising from a use of ‘+’ • In the first argument of ‘print’, namely ‘(1 + True)’ In the expression: print (1 + True) In an equation for ‘main’: main = print (1 + True) | 1 | main = print (1 + True) | ^^^^^^^^
375 / 2^(8 + 24) = 0.0000000873114914
Submissions must contain the code and the score. Highest score wins.