open System
type Dog =
{
name : string;
breed : string;
say : Dog -> unit;
}
member self.callSay () = self.say self
let jim =
{
name = "Jim";
breed = "unknown";
say = fun self -> printfn "%s: woof!" self.name;
}
jim.callSay ()
b3BlbiBTeXN0ZW0KCnR5cGUgRG9nID0KICB7CiAgICBuYW1lIDogc3RyaW5nOwogICAgYnJlZWQgOiBzdHJpbmc7CiAgICBzYXkgOiBEb2cgLT4gdW5pdDsKICB9CiAgICBtZW1iZXIgc2VsZi5jYWxsU2F5ICgpID0gc2VsZi5zYXkgc2VsZgoKbGV0IGppbSA9CiAgewogICAgbmFtZSA9ICJKaW0iOwogICAgYnJlZWQgPSAidW5rbm93biI7CiAgICBzYXkgPSBmdW4gc2VsZiAtPiBwcmludGZuICIlczogd29vZiEiIHNlbGYubmFtZTsKICB9CgpqaW0uY2FsbFNheSAoKQ==