【发布时间】:2014-06-16 01:53:53
【问题描述】:
我在名为person 的函数中定义了一个名为initials 的函数,但我不知道如何在person 之外调用initials:
main =
--I attempted to print the output of the initials function here.
(putStrLn ((person "firstName" "lastName") . initials)) --Not in scope: `initials'
--If this function call worked correctly, the output would be "f.l.".
person firstName lastName =
firstName ++ ["."] ++ lastName
where
fullName = firstName ++ " " ++ lastName
firstInitial = firstName !! 0
lastInitial = lastName !! 0
initials = [firstInitial] ++ "." ++ [lastInitial] ++ "."
是否可以在main 函数内部调用initials 函数,即使它是在person 函数内部定义的?
【问题讨论】:
-
您想要达到的结果是什么?即假设输入的名字和姓氏是“John”和“Doe”。输出应该是什么?
-
@senshin 在这种情况下,输出将是“J.D.”。我更新了问题以澄清这一点。