I'm working on an assignment in Haskell. However, the base code I am working with does not have a main function defined, and from the wording of the assignment I believe I am not expected to have to write any code outside of the solution to the problem. However, when I try to compile my code, I receive the error:
The IO function 'main' is not defined in module 'Main'
I assume this is because the function does not have a main function. However, when I try to write my own main function:
main :: IO ()
main = solve easy // easy is an array
I get the error:
Couldn't match expected type 'IO()' with actual type '[Int]'
The solve function's type is declared as follows:
solve :: [Int] -> [Int]
So it takes an array and returns an array. What am I doing wrong in writing my main function? Even when I try changing the declaration of main to things like:
main :: [Int]
or
main :: IO [Int]
I still can't get it to compile.
mainfunction in Haskell. I dispute the notion that your instructor is requiring you to complete the assignment without amainfunction, unless he specifically instructed you as such.easyis not an array, it is a list. :)mainmust be:: IO t, and[Int]is most definitely notIO [Int]Just sayprint $at the start of the declaration. Also, does it need to be compiled?