Source code is for humans, then the compiler turns it into code for machines.
Comment on ))<>((
dustyData@lemmy.world 7 months agoAs a professor said, most programming languages don’t care about readability and whitespace. But we care because humans need it to parse meaning. Thus, write code for people, not for the machine. Always assume that someone with no knowledge of the context will have to debug it, and be kind to them. Because that someone might be you in six months when you have completely forgotten how the code works.
Swedneck@discuss.tchncs.de 7 months ago
oce@jlai.lu 7 months ago
Python forcing end of line and tabs kinda does. Add Black auto-formatter and it’s pretty good.
frezik@midwest.social 7 months ago
I’ve seen too many Python devs write out complex statements all on one crammed up line. Including some that are in the main docs.
Enforced whitespace is just one aspect of readable code. There are many others, and Python is no better at enforcing those than any other language.
oce@jlai.lu 7 months ago
That would probably make very long lines and black would automatically add returns to line with proper indentations. But it has a a limit for sure. If you chain many list comprehensions it’s going to be a mess.
feinstruktur@lemmy.ml 7 months ago
This. Always be kind to your future self.
rockerface@lemm.ee 7 months ago
Yep, if you’re writing code for a machine, just do it in binary to save compilation time. Also, you in six months will indeed be someone with no knowledge of the context. And every piece of code you think you write for one-time use is guaranteed to be reused every day for the next 5 years
Mic_Check_One_Two@reddthat.com 7 months ago
snowsuit2654@lemmy.blahaj.zone 7 months ago
Yeah I totally agree. You can minimize and optimize as part of your build procedure/compilation but the source code should be as readable as possible for humans.
zalgotext@sh.itjust.works 7 months ago
Exactly. You read code way more times than you write it, so it makes all the sense in the world to prioritize readability.