我想在一个Director名为的数据类型变量的"movies"列表中添加一个元素billy.
type Name = String
type Movie = String
data Director = Director {name:: Name, movies::[Movie]}
deriving (Show)
let billy = Director "Billy J." ["Good movie 1"]
--addMovieToDirector :: Movie -> Director -> Director
addMovieToDirector m (Director n ms) = Director n (m:ms)
Run Code Online (Sandbox Code Playgroud)
问题是之前的功能没有更新比利的电影列表,它创建了一个Director带有所需列表的新内容(更改不存储在比利上).如何在不创建另一个的情况下操作比利的列表Director?我明白,Haskell使用常量,但是每次修改列表时我应该创建一个不同的'billy'"变量"吗?
谢谢!