Then there's docstrings which have special language support, textwrap.dedent, type annotation strings, several different interpolating systems and most people don't even know some of them.
YAMLs strings are overblown and are just the result of having a few modifiers. Of all the things to complain about having ways to make chucks of text readable is the weirdest one. Don't even dare look at how many weird strings bash has.
2. I think bash is a bad tool and we just can't get rid of it because it's ubiquitous and people are used to it. Stockholm syndrome. I wish something like Oil shell or Nu shell would take over, ideally a shell which passes objects, not strings.
I love YSH! But that's an odd take since it's heavily inspired by Python and also has a bunch of string types and 5 different types (i did have to look that up) of string interpolation. Combine that with OSH and you have a language ecosystem that has more weirdness than Bash and Python combined.
* three string syntaxes (regular, formatted, and raw) plus byte arrays.
* single vs double quotes, which are insignificant, other than that you don't need to escape the containing literal quote type.
* inline vs multiline.
These all compose in a predictable way.
If you want to be a jerk, you can multiply 4 * 2 * 2 and say "ZOMG 16 string types!!", but that's about as fair as saying that having positive/negative, octal/hex/dec, int/float, and standard/scientific means that a language has 24 numerical types.
They are actually really useful when you want multi-line formatted strings without indentation and had to be made official when people wanted to take them away.
> If you want to be a jerk, you can multiply 4 * 2 * 2 and say "ZOMG 16 string types!!"
And now you understand how they calculated the number of string types in YAML.
YAMLs strings are overblown and are just the result of having a few modifiers. Of all the things to complain about having ways to make chucks of text readable is the weirdest one. Don't even dare look at how many weird strings bash has.