В F# для следующего класса:
type Foo() =
member this.Bar<'t> (arg0:string) = ignore()
Почему компилируется следующее:
let f = new Foo()
f.Bar<Int32> "string"
Пока следующее не будет компилироваться:
let f = new Foo()
"string" |> f.Bar<Int32> //The compiler returns the error: "Unexpected type application"