It's about readability of the source code. With `<<-`, you can write:
foo() {
cat <<-EOF
hello
EOF
echo do something else
}
instead of
foo() {
cat <<-EOF
hello
EOF
echo do something else
}
giving a more logical indentation.
(Note that SE displays tabs as spaces in the rendered view of the post, so you'll have to imagine the blocks of four spaces there are tabs instead. Or copy and paste from the source view, if you like; it should give the contents with less mangling.)
I think the phrase "limit string" refers to the end delimiter of the here-doc, a thing you always have with one. It's the processing of the tabs that the additional `-` changes. Also, `<<<` is the non-standard here-string, not a here-doc.
.