Hacker News new | ask | show | jobs
by xigoi 928 days ago
What is ambiguous about Python’s syntax?
1 comments

    if a:
        print("foo")
    if b:
        print("bar")
Or wait, maybe the copy paste didn't work exactly right and "if b" was supposed to be inside "if a"
That’s a problem with your editor, not with Python.
But it's what ambiguous about Python's syntax. And I can make it a bit worse:

    if a:
       print("foo")
     if b:
        print("bar")
This is not a huge problem, but problems with syntax never are (in non-joke relatively modern languages). But it's still something I prefer that languages fix in their syntax if I get to have a choice.
The example you just posted is a syntax error, as it should be. And I still don’t get what is ambiguous about the syntax, the specification clearly states how indentation corresponds to a syntax tree.
Your insistence on the technical definition of "ambiguous" aside, you see what I mean after thinking about it for a while, though, right?