this post was submitted on 16 Sep 2024
723 points (97.3% liked)

Programmer Humor

37567 readers
1035 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 6 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] Smoogs@lemmy.world -1 points 10 months ago (3 children)

“Print needs ()”

Oh fuck off. years of code that cannot be easily redone in ANY editor. Whoever OCDd that into python 3 needs to have their asshole kicked up into their mouth.

[–] driving_crooner@lemmy.eco.br 18 points 10 months ago (1 children)

Imo is more intuitive the need of () in print,like is a function like any other, why would not use ()?

[–] Smoogs@lemmy.world 1 points 10 months ago* (last edited 10 months ago) (1 children)

If you developed it to not have brackets for the first one or two decades. Especially if there’s no possible way to easily edit it. You’re a psychopath to not consider this.

[–] thebestaquaman@lemmy.world 3 points 10 months ago

That's what major versions are for - breaking changes. Regardless, you should probably be able to fix this with some regex hackery. Something along the lines of

new_file_content = re.sub(r'(?<=\bprint)(\s+)(?!\()', '(', old_file_content)
new_file_content = re.sub(r'(print\(.*?)(\n|$)', r'\1)', new_file_content)

should do the trick.

[–] Swedneck@discuss.tchncs.de 13 points 10 months ago (1 children)

why would it not have brackets? i detest syntax that is only applicable to a handful of situations and has to be specifically memorized separately from how every other part of the language works.

[–] Smoogs@lemmy.world -1 points 10 months ago* (last edited 10 months ago)

Not after 10 years of it not having brackets. And providing no editing ability to change it as a macro. That’s just cruel and inhumane and psychopathic.

[–] janAkali@lemmy.one 2 points 10 months ago* (last edited 10 months ago)

Meanwhile Nim:

echo "I am still worthy"
let a = r"I hate the ugly '\' at the end of " &
         "multiline statements"
for x in 0..9:
  if x == 6: echo x

echo x # this is error in Nim, but not in python. Insane!
assert false + 1 # this is an error (python devs in shambles)
assert true - 1 # see above

Thanks for coming to my Ted-talk.
More here: Nim for Python Programmers