Braces are most often used to allow correct interpolation in strings, e.g.
print "${hours}h ${minutes}m", and to dereference things which are more than just variable names, as in your example. Here, you're treating
$_[0] (the first arg to the subroutine) as a scalar reference, dereferencing it, and setting its value to be that of the second subroutine argument. See
perlref.