geteilt von: https://lemmit.online/post/3018791
This is an automated archive made by the Lemmit Bot.
The original was posted on /r/ProgrammerHumor by /u/polytopelover on 2024-05-26 21:23:20+00:00.
geteilt von: https://lemmit.online/post/3018791
This is an automated archive made by the Lemmit Bot.
The original was posted on /r/ProgrammerHumor by /u/polytopelover on 2024-05-26 21:23:20+00:00.
First one are method name, second one are status name.
def open_file_dialog(self): self.dialog_file_open = True pass
Yoda level preference war.
I tend to add is to booleans toreally differentiate between a method name and a status.
def open_file_dialog(self): self.dialog_file_is_open = True pass
That way, it’s easier for my dumb brain to spot which is which at a glance.
fite me
No fiting. IS always goes at the start of names for booleans you are correct
that works for 2 word names eg is_open or is_file, but in this case is_dialog_file_open is structured like a question, while dialog_file_is_open is structured like a statement
Doesn’t matter, the point is that, if it starts with “is” then you automatically know it’s a boolean.
It still works. is_this_thing_some_thingy. Is is just a prefix for if the suffix returns true/false.
In Elixir, we mark statuses by using a question mark at the end of the variable name. Something like this:
I like this better than the
is_
prefixdoes ‘?’ have type definition in elixir or this is generally agreed design pattern?
If it’s like Lisp, then
?
is just part of the symbol and doesn’t have any special syntatic meaning. In different Lisps it’s also convention to end predicate names with a?
or withP
(p for predicate)jealously weeps in ruby
We do this in Ruby all the time, we just prefer methods over variables, usually.
def authorized? current_user&.authorized? end
I’m a principal backend engineer routinely writing Ruby for my day job, so I’m familiar, lol. But you can’t do it for local variables and that just sucks. Definitely a +1 for Elixir.
This is the way.
Command statement = an action
Question statement = a status
Lol mutable state