What are variables and semicolons for actually?

TadoTheRustacean@programming.dev to Programmer Humor@programming.dev – 104 points –

36

You are viewing a single comment

Yeah, semicolons are ugly anyway and they'd ruin the beautiful expression of your code.

On a more serious note, does rust suffer some of the same issues as JavaScript when it comes to omitting semicolons?

Do not expect to find anything like Javascript craziness on other languages. Or you'll be severely disappointed.

There are plenty of languages with warts at least as bad as JavaScript's. Bash, PHP, C, even relatively sane languages like Python still have huge issues like implicit variable declaration.

Nope. In Rust, a semicolon denotes a statement while a lack of semicolon is an expression so you can't just omit them at will. This does lead to cool things though like if/else blocks being able to produce values if they end in an expression. But the expression type is checked so you're less likely to make a mistake. You can see an example here: https://doc.rust-lang.org/rust-by-example/flow_control/if_else.html

In JavaScript I never skip semicolons because I've seen those subtle bugs.

POV: your project manager went in an "cleaned" it all up by removing them - your (sic) welcome! 😜