为什么FParsec示例不运行?

时间:2016-11-15 17:01:39

标签: f# fparsec

所以我从FParsec示例中运行以下代码,但它似乎不想运行。

namespace Test
open FParsec.CharParsers
module Stuff =
  let main = run pfloat "1.25E3"
  let str s = pstring s
  let floatBetweenBrackets = str "[" >>. pfloat .>> str "]"

问题是最后一行 - 我收到此错误:

Error   1   Expecting a type supporting the operator '>>.' but given a function type. You may be missing an argument to a function. C:\Users\...\Documents\Visual Studio 2013\Projects\Solution2\ConsoleApplication1\load.fs    6   42  Formatting

代码来自这里:

http://www.quanttec.com/fparsec/tutorial.html#parsing-a-float-between-brackets

如果重要,我正在运行的F#版本是:

Microsoft (R) F# Interactive version 12.0.30110.0

1 个答案:

答案 0 :(得分:4)

>>.FParsec.Primitives中定义,因此您也需要打开它。或者,您只需打开FParsec.map

即可
  

打开FParsec命名空间也会自动打开Primitives,CharParsers和Error模块。

since解释了为什么您所看到的错误就是它。