有一些代码要完成。但我不知道该怎么处理这句话。这就是代码:
data Zutat = Tomate | Fleisch | Salat
data Bun = Weizen | Roggen
data Sosse = Ketchup Sosse | Mayo Sosse | Keine
data Burger = Burger Bun [Zutat] Sosse我需要完成代码:
let zt = in -- Zutat
let so = in -- Sosse
let dw =dw必须像dw = Weizen [Tomate,Fleisch,Fleisch] (Mayo (Ketchup Keine))那样
得到了这个:
zt = [Tomate,Fleisch,Fleisch]
so = Mayo (Ketchup Keine)
dw = Burger Weizen zt so但是,我如何将其构建到let in表达式中呢?
发布于 2017-03-24 20:13:20
您可以将这些表达式插入到let表达式中:
let zt = [Tomate, Fleisch, Fleisch] in
let so = Mayo (Ketchup Keine) in
let dw = Burger Weizen zt so in
...或者使用单个let表达式:
let
zt = [Tomate, Fleisch, Fleisch]
so = Mayo (Ketchup Keine)
dw = Burger Weizen zt so
in ...完整的例子:
data Zutat = Tomate | Fleisch | Salat
deriving (Show)
data Bun = Weizen | Roggen
deriving (Show)
data Sosse = Ketchup Sosse | Mayo Sosse | Keine
deriving (Show)
data Burger = Burger Bun [Zutat] Sosse
deriving (Show)
main :: IO ()
main = let
zt = [Tomate, Fleisch, Fleisch]
so = Mayo (Ketchup Keine)
dw = Burger Weizen zt so
in print dw输出:
Burger Weizen [Tomate,Fleisch,Fleisch] (Mayo (Ketchup Keine))听起来您需要参考一下基本的Haskell语法。
https://stackoverflow.com/questions/43008176
复制相似问题