News for hackers. Stuff that matters.
Re:“C is how the computer works” is a dangerous mindset for ... by ChrisSD on Tuesday March 31, 2020 @03:54PM (#22741760)
To be precise, C does not have a defined ABI (the spec goes out of its way to avoid this). Platforms (OS+Arch) define a C ABI for their own tools. Since this ABI is required to interop with the OS APIs, this will usually become the de-facto standard for the platform.

This might seem like nitpicking but it's an important distinction because you can't assume that C data structures can be passed between different platforms (e.g. over a network or even stored in a filesystem).

Re:“C is how the computer works” is a dangerous mindset for ... by jeffdavis on Tuesday March 31, 2020 @06:02PM (#22743162)
What is the right way to say that without sounding too pedantic every time? "Most platforms define a stable C ABI"?
Re:“C is how the computer works” is a dangerous mindset for ... by pjmlp on Wednesday April 01, 2020 @03:13AM (#22746445)
The only platforms that define a stable C ABI are those whose OS is written in C and exposes a C API to userspace.

Symbian did not had a C ABI for example, nor do mainframes, in ChromeOS or Android you also don't have a C ABI exposed to userspace, in Windows a C ABI also won't help you much if you need to speak COM or now UWP.