It lets you define the name of the this parameter in exactly the same way you pass it.
type Bar(p) = member x.Foo(bar) = printf "%s %d" bar p let x = new Bar(10) x.Foo("Foo bar")
Foo bar 10
class Flip(object): foo=4 def flop(x,num): x.bar=x.foo+num
It lets you define the name of the this parameter in exactly the same way you pass it.
Output: And yes, the variables bar and p are type inferred from the %s and %d respectively