Hacker News new | past | comments | ask | show | jobs | submit login

A common idiom to defang this was the "Yoda assignment":

  if (0 == do_something(foo)) { ... }
If one accidentally omits one equals-sign, it makes the compiler barf instead of becoming a silent-but-deadly kind of bug (whether intentional or not).

In Go, an assignment is not an expression, so the whole thing becomes illegal. I found this approach a bit offensive at first, but I got used to it rather quickly.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: