On Tue, Jan 05, 2021 at 02:35:05AM +0300, Paul Sokolovsky wrote:
But links were already posted: https://github.com/search?o=desc&q=python+braces&s=updated&type=Repositories . That's even sorted by last updated. Not every project in that list is about "python braces", but there're enough.
That's a very unimpressive collection of "Python-with-braces" projects. The most popular of them is Bython, as you say:
That said, https://github.com/mathialo/bython collected 255 stars and has 2 contributors, like you wish.
I've heard of bython. But before you get too excited over an entire 255 stars and two contributors, you should compare it to a project like Coconut: https://github.com/evhub/coconut with 3.1K stars and 20 contributors. I would be the first to acknowledge that Coconut is a niche part of the Python ecosystem, but it is more than 10 times bigger than Bython based on this simplistic measure of popularity. But here's another: https://trends.google.com.au/trends/explore?q=bython,coconut%20language
This one: https://github.com/umlet/pwk has only 94 stars, but even 3 contribs. More importantly, it got the motivational part right:
We love Python. We love them bash one-liners. We want to do one-liners in Python.
Who is "we" here? People who don't care about readability, maintainability or correctness of their code? One liners hurt all three of those.
The most vivid real-world example of that I know is Frida the reverse-engineering framework (https://frida.re). The issue is so prominent that they admit it on the first page of the docs (https://frida.re/docs/home/):
Why a Python API, but JavaScript debugging logic?
What they write under that title is now marketing blah-blahing, but I remember when it leaked the sad truth: "We use JavaScript because its syntax more suitable for one-liners and small code snippets". If there was a generally accepted alternative syntax for Python, situation might have been different.
So the jewel in your crown, the most important, vital, convincing example of why Python needs braces that you could find, the killer use-case that you hoped would convince us of the value of braces, comes from a project that doesn't actually mention one-liners or braces. "Trust me, it *totally* used to say that!!!" I believe you. But perhaps rather than leaking the sad truth, the project maintainers decided that your quote was inaccurate or unnecessary. You know Paul, as an advocate for braces, you're doing a great job of convincing me that they aren't necessary. Have you considered that rather than a new dialect of Python all you need is a source code pre-processor or transformation? -- Steve