semOp l = \m -> case l of
LD g -> case m of
St xs -> St (g::xs)
_ -> Error
Run Code Online (Sandbox Code Playgroud)
只是想知道该\m部分在这里做什么。
\m -> ...是匿名函数的语法,又名“lambda 表达式”。
例如,以下两个声明是等效的:
f x = x + 5
f = \x -> x + 5
Run Code Online (Sandbox Code Playgroud)
两者都定义了一个带有一个参数的函数x,该函数返回一个大于x5 的数字。