this post was submitted on 22 Nov 2023
278 points (98.9% liked)
196
16748 readers
2352 users here now
Be sure to follow the rule before you head out.
Rule: You must post before you leave.
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
What the fuck?
Lua is the same. Only
false
andnil
are "falsey".I remember I fixed a bug in a mod for Minetest that assumed
0
was false and caused an infinite loop.Yup :) Everything in Ruby inherits Object, too. It's a really neat language, and when you get accustomed to it, you might wonder why some other languages aren't written like it.
For the 0 value being truthy, consider that Ruby is a dynamic language. Imagine if you asked a user how many motorcycles they own. If they answer, you'll have an Integer. If they don't, you'll have nil, from NilClass. 0 is just as valid of an answer as 2, so you can do something like this:
And people bash Javascript as if it was the devil when thinks like this exist on other languages.