putStrln (print x) вообще не имеет никакого смысла
замени print на show
show это функция конвертации в строку, возвращает строковое предствление значения
print это функция, которая превращает аргумент в стоку через show, а потом выводит через putStrLn