3 ms·
What land mines? Only `true` is true in Dart, everything else is false.
by mythz 12y ago
What land mines? Only `true` is true in Dart, everything else is false.
- yourad_io 12y agoIsn't this in sharp contrast to most other programming languages out there?
- jahewson 12y agoJava only allows booleans in conditionals, and it remains the most popular programming language.
- algorithms 12y agoI'd say so too. Many languages say that everything NOT false or null is true.
- kyrra 12y agoNumbers between DartVM run code and JS compiled code have different behavior[0]. [0] https://code.google.com/p/dart/issues/detail?id=1533 https://code.google.com/p/dart/issues/detail?id=1533
- mythz 12y agoEveryone likes to bring up this same issue each time which is rarely an issue in practice. Yes, numeric overflows have different behavior because of Dart's variable integers vs JS where all numbers are floats behind the scenes. There is a VM and command-line `throw_on_javascript_int_overflow` flag that can be used to throw an error if there is any such overflow in your app. Ideally when BigNums lands in JS this will no longer be an issue.
- JohnHaugeland 12y agoIt's breathtaking when someone asks for examples, then discards the answer they get as too common.
- mythz 12y agoThings that rarely happen in practice aren't mine-fields. The only common thing in this issue is that it's brought up in every Dart thread, the actual issue of integer overflows is itself rare and usually an indication of a bug in your program.
- tomp 12y agoExactly. And in the UK, they drive on the left. If either of these facts were the normal/usual/default, we wouldn't need to point them out.
- gecko 12y agoIs "string s = 5" still legal in Dart, or did they fix that? Last I heard, that worked by design.