[Python-ideas] Desperate need for enhanced print function

This perspective doesn't grant enough credit to the significance of Cin general, and the C ABI in particular, in the overall computinglandscape. While a lot of folks have put a lot of work into making itpossible to write software without needing to learn the details ofwhat's happening at the machine level, it's still the case that the*one* language binding interface that *every* language runtime ends upincluding is being able to load and run C libraries.

Ah, now I understand. We need to add {} to C. That'll make it, right? ;)

Seriously, there are also other significant influences that fit better here:template engines. I know a couple of them using {} in some sense or another.C format strings are just one of them, so I wouldn't stress the significanceof C that hard in that particular instance. There are other areas where Chas its strengths.

You're tilting at windmills Sven. Python has 3 substitution variablesyntaxes (two with builtin support), and we no longer have any plansfor getting rid of any of them. We *did* aim to deprecatepercent-substitution as part of the Python 3 migration, and aftertrying for ~5 years *decided that was a bad idea*, and reversed theoriginal decision to classify it as deprecated. We subsequentlyswitched the relevant section of the docs from describingpercent-formatting as "old string formatting" to "printf-style stringformatting" in a larger revamp of the builtin sequence typedocumentation a few years back:https://hg.python.org/cpython/rev/463f52d20314

PEP 461 has now further entrenched the notion that "percent-formattingis recommended for binary data, brace-formatting is recommended fortext data" by bringing back the former for bytes and bytearray in 3.5,while leaving str.format as text only:https://www.python.org/dev/peps/pep-0461/

PEP 498 then blesses brace-formatting as the "one obvious way" fortext formatting by elevating it from "builtin method" to "syntax" in3.6.