do --- trivial setget local t = {} function t:set(x) self.a=x end function t:get() return self.a end t:set("foo") assert(t:get() == "foo") assert(t.a == "foo") t:set(42) assert(t:get() == 42) assert(t.a == 42) end