4 ms·
I like semicolons, because it lets me use the brackets style I prefer (allman) instead of whatever the language devs think I should use. This is a really big is
by voidUpdate 2y ago
I like semicolons, because it lets me use the brackets style I prefer (allman) instead of whatever the language devs think I should use. This is a really big issue for me trying to use Go, as they automatically insert a semicolon to the end of every line that doesn't end with a {, so the language forces you to use K&R, which I really dislike reading
- xandrius 2y agoThat's not really true though, I've used golang for years and never had semicolons added automatically.
- voidUpdate 2y agoI don't mean it actually adds them to the file itself, its like it adds virtual ones during compilation. Try placing the { from the func main() { on a new line and it will fail to compile
- xandrius 2y agoOh, I see, that's what you meant. Thanks for clarifying :)
- arp242 2y agoThe Go compiler inserts semi-colons. https://go.dev/ref/spec#Semicolons https://go.dev/ref/spec#Semicolons If you follow those rules, you will see that this: if true; { fmt.Println() } else { fmt.Println() } Will get rewritten to: if true; { fmt.Println(); }; else; { fmt.Println(); }; And that won't work. That's why the braces need to be as "} else {". and "if .. {". It used to be that the compiler gave some pretty confusing errors about semi-colons on this, but it seems that's been improved now. JavaScript has similar semi-colon insertion by the way, but with some different (more confusing) rules.
- xandrius 2y agoThat's really neat, it had escaped me till now. Thanks for the explanation (today I'm one of the lucky 10,000!)