##
$obj->other_obj()->method;
####
$obj->other_obj->method;
####
use warnings;
use strict;
package Blah; {
sub new { return bless {}, $_[0]; };
sub one { $_[0]->{num}++; return $_[0]; };
sub say { print "$_[0]->{num}\n"; };
}
package main; {
my $obj = Blah->new;
$obj->one()->say;
# or
$obj->one->say;
}