1. `[[...]]` is more robust wrt empty expansions than `[..]`
2. `${foo-}` is simpler and won't accidentally be a url compared to
`${foo:-}`
3. `+=` works even when the variable is undefined.
1. `[[...]]` is more robust wrt empty expansions than `[..]`
2. `${foo-}` is simpler and won't accidentally be a url compared to
`${foo:-}`
3. `+=` works even when the variable is undefined.