Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

That's C for you. If you want something saner, use Rust or Haskell or Python or even Java or Go or.. almost any other language that's not C or C++.

These days the whole point of C is this Faustian pact with the devil of speed for sanity.



Writing Rust and Haskell for sanity is not something I would agree with. Maybe for language characteristics but reading those make me jump out of the window.


I have the same issue with Java and Go. (Which I brought up as well.)

Yet, they still compare favourably with C in this regard. Almost anything does.


I think Rust doesn't allow integer overflow either, unless you specifically use the wrapping_* operations. Probably the same kind of thing will also happen to Rust.


Rust either allows or traps on integer overflow depending on the mode. Either way it’s defined behaviour.


Ah, I forgot that it is also defined in release mode, but just considered undesirable.




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

Search: