type Singleton model text greeting fun speak = void by block do writeLine(me.greeting + " I'm a singleton") end end Singleton instance fun getInstance = Singleton by block if instance == null do instance = Singleton() end return instance end type SomeOtherType Singleton s1 = Singleton.getInstance() s1.greeting = "Hello" Singleton s2 = Singleton.getInstance() s2.greeting.append(", World!") writeLine(s1 + " and " + s2 + " are the same object: " + (s1 == s2) + ", s2: " + s2.greeting) s1.speak() # call instance method