2.1 How to use new object method calling in Maple 2021?

In Maple 2021, it is now possible to use object:-method(arg) notation. This makes is easier to use OOP in maple. To do this, use _self as follows

restart; 
 
module person() 
 option object; 
 local name::string:=""; 
 local age::integer:=0; 
 
 export get_name::static:=proc(_self,$) 
   return _self:-name; 
 end proc; 
 
 export set_name::static:=proc(_self,name::string,$) 
   _self:-name:=name; 
 end proc; 
 
 export get_age::static:=proc(_self,$) 
   return _self:-age; 
 end proc; 
 
 export set_age::static:=proc(_self,age::integer,$) 
   _self:-age:=age; 
 end proc; 
 
end module;
 

And now make an object and use it as follows

o:=Object(person) 
                  o := Object<<1846759887808>> 
 
o:-get_name(); 
             "" 
 
o:-get_age(); 
             0 
 
o:-set_name("joe doe"); 
o:-get_name(); 
           "joe doe"