如何声明函数suffixsen:string list - >字符串列表?
答案 0 :(得分:2)
在sml中定义带有一个参数的函数的语法是:
fun functionName argumentName = functionBody
或
fun functionName (argumentName : argumentType) = functionBody
如果要明确指定类型。因此,要定义类型为suffixsen
的名为string list -> string list
的函数,您可以执行以下操作:
fun suffixsen (strings : string list) = someExpressionThatReturnsAStringList
编辑以回复您的评论:
为了将“son”附加到列表中的每个字符串,您应该查看连接字符串的^
运算符[1]和为每个元素执行操作的map
function在列表中。
[1] http://www.standardml.org/Basis/string.html#SIG:STRING.^:VAL
(在浏览器中复制并粘贴此链接 - 出于某种原因,我无法将其设为可点击)
答案 1 :(得分:2)
在parens中声明类型后,使用 :return-type
在外部声明函数的返回类型。至少在SMLnj。我通过反复试验找到了这个,找不到它的文档。
fun suffixson (xs: string list ): string list =
map (fn x => x ^ "son") xs