-2
-- Types
type Title = String
type Actor = String
type Cast = [Actor]
type Year = Int
type Fan = String
type Fans = [Fan]
type Period = (Year, Year)
type Database = [Film]
testDatabase :: Database
testDatabase = [("The Gunman", ["Idris Elba", "Sean Penn", " Javier Bardem"],
2015,["Garry", "Dave", "Zoe", "Kevin", "Emma"]),("The Shawshank Redemption", ["Tim Robbins", "Morgan Freeman", "Bob Gunton"],1994, ["Bill", "Jo", "Garry"]),
("The Dark Knight", ["Christian Bale", "Heath Ledger","Aaron Eckhart"], 2008, ["Zoe","Heidi", "Jo", "Emma", "Liz", "Sam", "Olga", "Kevin", "Tim"]),
("Inception", ["Leonardo DiCaprio", "Ellen Page"], 2010, ["Jo", "Emma", "Zack", "Olga", "Kevin"])]
displayAllFilms :: Database ->[(Title, Cast, Year, Fans)]
displayAllFilms [] = []
displayAllFilms ((i, j, k, l): xs)
|l == [] = (i, j, k, []) : displayAllFilms xs
|otherwise = (i, j, k, l) : displayAllFilms xs
И я получаю эту ошибку> Я не знаю, что делать. Что такое ошибка?Показать все фильмы в базе данных haskell
*Main> displayAllFilms
<interactive>:13:1:
No instance for (Show (Database -> [(Title, Cast, Year, Fans)]))
arising from a use of `print'
Possible fix:
add an instance declaration for
(Show (Database -> [(Title, Cast, Year, Fans)]))
In a stmt of an interactive GHCi command: print it
Я не знаю, почему этот вопрос становится такой негативный прием. Это кажется мне совершенно необычным. – dfeuer