my @list = CustomList.new(); @list = @other_list; # you lose @list's type as well # assignment that preservers the type has to # assign to the contents, not the container: @list[*] = @other_list;