标签: haskell partial-application
有没有办法将getLine部分应用于writeFile或类似的功能(用于文件命名)?我想做这样的事情:
getLine
writeFile
main = writeFile ??? . computeSomething =<< somethingElse
???应该是用户输入的一行来命名输出文件,但我不知道要为???插入什么。我尝试插入=<< getLine和类似的代码片段,但没有任何方法可以帮助我。
???
=<< getLine
是否有可能以可读的方式使用do-notation来实现这一目标?
答案 0 :(得分:2)
您可以使用flip来翻转参数的顺序:
flip
getLine >>= flip writeFile computeSomething
如果您想要减少功能,工具pointfree会很有用。
pointfree