Artist
및 Genre
문자열을 매개 변수로 허용하는 함수를 작성하려고 시도하고 해당 장르의 모든 Artist
을 출력합니다. 다음과 같이 나는 데이터 유형 Artist
을 정의했습니다 :사용자 정의 형식 필터링
data Artist = Artist Name Genres
deriving Show
type Name = String
type Genres = [Genre]
type Genre = String
다음과 같은 기능을 구현하는 내 코드는 다음과 같습니다
getFilteredArtists :: [Artist] -> Genre -> [Artist]
getFilteredArtists xs genre = filter (genre) (map getGenres xs)
샘플 함수 호출은 다음과 같습니다 :
artists = [
Artist "Grimes" ["Electropop", "Dream Pop", "Synthpop"],
Artist "My Bloody Valentine" ["Shoegaze", "Noise Pop", "Post Punk"],
Artist "David Bowie" ["Art Rock", "Pop Rock", "Glam Rock", "New Wave"]
]
getFilteredArtists artists "Art Rock"
어느해야 return [Artist "David Bowie" ["Art Rock", "Pop Rock", "Glam Rock", "New Wave"]
그러나 내 기능은 typ를 출력하고 있습니다. 전자 매칭 오류 및 나는 왜 확신 할 수 없다. 어떤 도움이라도 대단히 감사합니다!