Haskell:语法错误
这是我的电影数据类型代码和保存它的数据库Haskell:语法错误,haskell,Haskell,这是我的电影数据类型代码和保存它的数据库 data Film = String [String] Int [String] deriving (Eq,Ord,Show,Read) testDatabase :: [Film] testDatabase = ["Casino Royale" "Daniel Craig", "Eva Green", "Judi Dench" 2006 "Garry", "Dave", "Zoe", "Kevin", "Emma" "Cowboys &
data Film = String [String] Int [String]
deriving (Eq,Ord,Show,Read)
testDatabase :: [Film]
testDatabase = ["Casino Royale"
"Daniel Craig", "Eva Green", "Judi Dench"
2006
"Garry", "Dave", "Zoe", "Kevin", "Emma"
"Cowboys & Aliens"
"Harrison Ford", "Daniel Craig", "Olivia Wilde"
2011
"Bill", "Jo", "Garry", "Kevin", "Olga", "Liz"]
我不断地犯这个错误
parse error (possibly incorrect indentation or mismatched brackets)
不知道为什么会给我这个。有什么帮助吗?问题与列表中的缩进有关。Haskell非常关心空格,如果继续到第二行,则需要缩进。另外,确保字符串列表实际上是列表。另一个问题是,在数据声明中需要一个构造函数。试着这样做:
data Film = Film String [String] Int [String]
deriving (Eq,Ord,Show,Read)
testDatabase :: [Film]
testDatabase = [Film "Casino Royale"
["Daniel Craig", "Eva Green", "Judi Dench"]
2006
["Garry", "Dave", "Zoe", "Kevin", "Emma"]
, Film "Cowboys & Aliens"
["Harrison Ford", "Daniel Craig", "Olivia Wilde"]
2011
["Bill", "Jo", "Garry", "Kevin", "Olga", "Liz"]]
问题与列表中的缩进有关。Haskell非常关心空格,如果继续到第二行,则需要缩进。另外,确保字符串列表实际上是列表。另一个问题是,在数据声明中需要一个构造函数。试着这样做:
data Film = Film String [String] Int [String]
deriving (Eq,Ord,Show,Read)
testDatabase :: [Film]
testDatabase = [Film "Casino Royale"
["Daniel Craig", "Eva Green", "Judi Dench"]
2006
["Garry", "Dave", "Zoe", "Kevin", "Emma"]
, Film "Cowboys & Aliens"
["Harrison Ford", "Daniel Craig", "Olivia Wilde"]
2011
["Bill", "Jo", "Garry", "Kevin", "Olga", "Liz"]]
问题与列表中的缩进有关。Haskell非常关心空格,如果继续到第二行,则需要缩进。另外,确保字符串列表实际上是列表。另一个问题是,在数据声明中需要一个构造函数。试着这样做:
data Film = Film String [String] Int [String]
deriving (Eq,Ord,Show,Read)
testDatabase :: [Film]
testDatabase = [Film "Casino Royale"
["Daniel Craig", "Eva Green", "Judi Dench"]
2006
["Garry", "Dave", "Zoe", "Kevin", "Emma"]
, Film "Cowboys & Aliens"
["Harrison Ford", "Daniel Craig", "Olivia Wilde"]
2011
["Bill", "Jo", "Garry", "Kevin", "Olga", "Liz"]]
问题与列表中的缩进有关。Haskell非常关心空格,如果继续到第二行,则需要缩进。另外,确保字符串列表实际上是列表。另一个问题是,在数据声明中需要一个构造函数。试着这样做:
data Film = Film String [String] Int [String]
deriving (Eq,Ord,Show,Read)
testDatabase :: [Film]
testDatabase = [Film "Casino Royale"
["Daniel Craig", "Eva Green", "Judi Dench"]
2006
["Garry", "Dave", "Zoe", "Kevin", "Emma"]
, Film "Cowboys & Aliens"
["Harrison Ford", "Daniel Craig", "Olivia Wilde"]
2011
["Bill", "Jo", "Garry", "Kevin", "Olga", "Liz"]]
您在“Emma”之后和“牛仔与外星人”之前缺少一个逗号。哦,每行换行都缺少逗号。另外,你还没有构建你的电影值,你所定义的只是一个字符串列表。啊,我看到了。非常感谢你在“Emma”之后和“牛仔与外星人”之前漏掉了一个逗号。哦,每行换行都缺少逗号。另外,你还没有构建你的电影值,你所定义的只是一个字符串列表。啊,我看到了。非常感谢你在“Emma”之后和“牛仔与外星人”之前漏掉了一个逗号。哦,每行换行都缺少逗号。另外,你还没有构建你的电影值,你所定义的只是一个字符串列表。啊,我看到了。非常感谢你在“Emma”之后和“牛仔与外星人”之前漏掉了一个逗号。哦,每行换行都缺少逗号。另外,你还没有构建你的电影值,你所定义的只是一个字符串列表。啊,我看到了。非常感谢