创建递归函数但在使用参数时出错

时间:2013-12-18 22:05:37

标签: f#

我试图在F#中创建一个递归函数,并且在F#和函数式编程方面真的很新,所以这可能是基本的东西。

let rec groupTheResults (htmlNodes : seq<HtmlNode>, resultList: List<HtmlNodeGroup>) :List<HtmlNodeGroup> =
    if Seq.length htmlNodes > 0 then
        let listThing = Seq.take 2 htmlNodes
        []
    else []

如果我删除let listThing = Seq.take 2 htmlNodes,那么编译器会很高兴。我做的事情是违法的还是什么?

1 个答案:

答案 0 :(得分:0)

根据评论中的一些讨论,使用

生成错误
#indent "off"

禁用F#的空格敏感度。因此,in行之后需要let ...

您需要重新加载fsi会话(右键单击 - >重置交互式会话)才能清除它。打字

#indent "on" 

也可能有用