you are viewing a single comment's thread
view the rest of the comments
[โ€“] 37 points 3 years ago (13 children)

Python, and I like that I know it

  • source
  • hideshow 13 child comments
  • [โ€“] 2 points 3 years ago (3 children)

    I'm an embedded systems C programmer with passing familiarity with Python. To me it seems ridiculous that a language relies on whitespace for blocking. Is that true?

  • source
  • parent
  • hideshow 3 child comments
  • [โ€“] 6 points 3 years ago

    It only requires consistent indentation inside blocks, which is what any good code does anyway for readability. So the main difference then is just that you no longer need the redundant curly braces.

  • source
  • parent
  • [โ€“] -1 points 3 years ago (1 child)

    Yes, unfortunately. There is a lot of tooling around it but it still feels bizarre after years of using it.

  • source
  • parent
  • hideshow 1 child comment
  • [โ€“] 1 point 3 years ago* (last edited 3 years ago)

    I'm anal about curly braces in C. I never code without them because I don't like being ambiguous.

    I never do

    if(i=0) return 0;

    or worse

    if(i=0) return 0;

    I do

    if(i=0) { return(0); }

  • source
  • parent
  • [โ€“] 2 points 3 years ago (8 children)

    I had to use Python for a bit at work and it was confusing

    pipenv, venv, virtualenv, poetry...wtf is all this shit

    a.b vs a['b'] vs a.get('b')...wtf is a KeyError

  • source
  • parent
  • hideshow 8 child comments
  • [โ€“] 4 points 3 years ago (5 children)

    What happens in other languages you use when you try to access a non-existing key for a hash/map/dict?

    What language do you use that accessing an object attribute is the same that accessing a dict key?

    What knowledge do you have (or not) that KeyError is a mistery to you?

  • source
  • parent
  • hideshow 5 child comments
  • [โ€“] 1 point 3 years ago (2 children)

    Return undefined.

    Typescript.

    Why error? Just return undefined. Simple, no try/catch needed.

  • source
  • parent
  • hideshow 2 child comments
  • [โ€“] 1 point 3 years ago (1 child)

    Because that's prone to errors. And the Zen of Python includes "explicit is better than implicit" and "Errors should never pass silently". Languages that do otherwise create bad habits.

  • source
  • parent
  • hideshow 1 child comment