`type Animal = ref object name: string age: int proc speak(self: Animal, msg: string) = echo self.name & " says:" & msg proc setName(self: Animal, name:string) = self.name = name proc incAge(self: Animal) = self.age += 1 proc `$`(x, y:Animal ): string= $x.name & " is " & $y.age.int & " old" var sparky = Animal(name: "Sparky", age: 10) sparky.setName("John") sparky.incAge() echo sparky.$()`
Run