Hacker News new | ask | show | jobs
by lgas 2254 days ago
Actually `main` in Haskell can be an IO action returning any type, eg this is a perfectly valid main:

    main :: IO Int
    main = print "10" >> pure 10
the return value is just ignored when it's actually invoked as an executable (but can be used if invoked eg. in the repl, or if main is also called from somewhere deeper in the code).