this post was submitted on 15 Oct 2023
275 points (95.1% liked)

Programmer Humor

32410 readers
1 users here now

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

Rules:

founded 6 years ago
MODERATORS
 
all 20 comments
sorted by: hot top controversial new old
[–] schnurrito@discuss.tchncs.de 28 points 2 years ago (1 children)

"result" is fine. That is the variable you will end up returning that you have to fill with stuff first.

"data" on the other hand…

[–] hal_canary@lemmy.sdf.org 4 points 2 years ago

I came here to say this.

Declare result in the first line of the function and return result is the last line. In C++, this is a big hint to the compiler that you want return value optimization to kick in.

[–] erogenouswarzone@lemmy.ml 22 points 2 years ago (1 children)

As a person who victimizes coworkers like this, I apologize. Thank you for pointing it out, and I will stop doing it.

[–] wizardbeard@lemmy.dbzer0.com 10 points 2 years ago (1 children)

Be proud that it's a step up from var x

Be scared that your coworkers are planning how to best apply the baseball bat to your knees anyway

[–] erogenouswarzone@lemmy.ml 2 points 2 years ago

Even using absolute best prackies, developers are gonna find a bunch of stuff to complain about.

[–] DmMacniel@feddit.de 19 points 2 years ago (1 children)

Well obviously it's the result of some algorithm that will happen.

[–] shotgun_crab@lemmy.world 7 points 2 years ago (1 children)
[–] Quik 1 points 2 years ago

Will name every of my functions like this now, thank you for pointing out that incredible meaningful name

[–] henfredemars 15 points 2 years ago

I've had instances where I worked with an API so badly designed in a dynamic language that I had no idea what I might receive.

This, when I get something back that's not what I expected, I just logged the type because I really don't know what it is. It's the result. Whatever that means.

[–] gramie@lemmy.ca 14 points 2 years ago (1 children)

It could be that this is a habit left over from pascal, where result is a reserved word, and is automatically made the return value of the function.

If it is in the context of a short function, I don't see that it's all that bad.

[–] aksdb@feddit.de 4 points 2 years ago

Yup, I also do that. If I just need a variable to put in what will be returned, I call it result. What it means should be clear from the function name. Repeating that feels redundant.

[–] fred@lemmy.ml 6 points 2 years ago (1 children)
[–] Pxtl@lemmy.ca 7 points 2 years ago (2 children)

Exactly. If it's a statically typed language and the function has a clear name? I know what type it is, I know what it's for, I'm good.

There are far worse sins, like intermediate variables or worse, public class members named "obj" or "data".

[–] qaz@lemmy.world 1 points 2 years ago

GitHub doesn’t show types. So if the value is given to another function you would have no way of knowing what type it is unless you read the file that other function is declared in.

[–] owzim@lemmy.world 3 points 2 years ago (1 children)

As someone who uses 'result' as a variable name in functions all the time, please tell me what you think is wrong with it?

If a function is called for example 'transformAtoB' it should be totally obvious what the variable will contain.

[–] qaz@lemmy.world 1 points 2 years ago* (last edited 2 years ago)

It’s not necessarily bad, it just provides very little information.

[–] Tartas1995@discuss.tchncs.de 2 points 2 years ago

The only issue is "var".

[–] pHr34kY@lemmy.world 2 points 2 years ago* (last edited 2 years ago)

You declare it as the first line after "function getNextDay() : date {", then it is glaringly obvious that is a date variable that will (eventually) contain tomorrow's date, and will be returned by the function.

However, I would only use "var" if it's initialized in the same statement. It prevents Smurf code, and the compiler knows the type straight away.

Given a small and clean context, variable names don't need to be specific.

[–] JoYo@lemmy.ml 0 points 2 years ago

yah because we’d rather die than use return type hints.