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

It's more than that. C-the-language just doesn't have low-level concepts such as machine addresses, and its facilities for dealing with the types that the abstract machine ascribes to all objects are quite limited.

Ada has System.Address to model machine addresses:

http://ada-auth.org/standards/rm12_w_tc1/html/RM-13-7.html#p...

C++ has std::less specializations for pointer types which provide a strict total order (one aspect of machine addresses):

https://en.cppreference.com/w/cpp/utility/functional/less

There is also placement new and std::launder for more explicit control of typed memory:

https://en.cppreference.com/w/cpp/language/new https://en.cppreference.com/w/cpp/utility/launder

These days, even Java tries to model machine addresses:

https://docs.oracle.com/en/java/javase/21/core/foreign-funct...



Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

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

Search: