${var:+OTHER} If var set, evaluate expression as $OTHER, otherwise as null string
Если переменная объявлена
и не пустая(отличие «:+» от «+») то меняет её значение на то, что указано после двоеточия, если нет — то выдает пустую строку. Обычно используется для набора строки из нескольких элементов с каким-то разделителем в цикле (имеется ввиду, что первый элемент не должен начинаться с разделителя, а все остальные должны)
ELEM_SET=${ELEM_SET+${ELEM_SET}/}"$NEW_ELEM"}
В вашем примере после строки
/home/dex/.perl5/bin добавляет двоеточие и предыдущее содержимое переменной PATH, а если переменная пустая, то не добавляет двоеточие.