I can't tell if this is serious. Surely if you're still using C now it's for legacy reasons. And if using it for legacy reasons you are likely stuck using an old C standard. So who will use C23?
C is the best choice if you want all of: small (both language and binaries), fast (both compiler and binaries), obvious (no/minimal complex magic), close to the metal, with excellent debugging support, portability and integrations. No other language has been battle tested for longer and more extensively than C. Your kernels, OSes, drivers, databases, web servers and compilers are written in C. If some of these featur…
C meeting is over. C23 added:
231–240 of 363 posts
Re: C meeting is over. C23 added:
#232“`typeof` is standard” Hallelujah, after only five decades generic, type-safe macros which evaluate their arguments exactly once will finally be possible with standards-compliant C.
How so? You'd also need statement expressions for most of them.
Re: C meeting is over. C23 added:
#233Earlier quoted context omitted.
Modern C compilers are written in C++. So much for C's simplicity in writing compilers.
There are plenty of C compilers written in C. Large compiler suites for C/C++ are usually written in C++. But as a contributor to GCC, I can say that large parts of the code still look very much like C.
If you cannot compile GCC with a C compiler, it isn't C.
Re: C meeting is over. C23 added:
#234Earlier quoted context omitted.
The amount of users doesn't change the fact of the tooling quality, but no wonder, UNIX folks tend to only take free beer, so what do they know about fine wine.
I've read the Eiffel books, and tried to use the Eifell tools, on Windows - a horrid experience. I am not a "UNIX folk" and I can't imagine what comparing UNIX and Eifell has to do with anything. It is basically an unuseable programming language and toolset, promoted by an egomaniac with a grudge against C++. If you disagree, please provide a link to something medium sized and useful written in Eifel.
To you or the companies that keep Eiffel Software in business for 30 years?
Re: C meeting is over. C23 added:
#235Earlier quoted context omitted.
Neither, unless we are speaking of kernel and drivers kind of systems programming, in which case I would pick Rust. For anything else, a language with automatic memory management.
I wish D was more widely used, as it seems to be good as a systems language, too.
Re: C meeting is over. C23 added:
#236Re: C meeting is over. C23 added:
#237Earlier quoted context omitted.
UNIX is to C like the Web is to JavaScript. JavaScript also runs outside of the browser nowadays, so what.
I don't know what are you trying to say? How does this follow from the parent post?
Likewise UNIX made C unavoidable in systems programming for timesharing servers, eventually like JavaScript outgrew the browser, certain people wanted to run C in their microcomputers.
Re: C meeting is over. C23 added:
#238Earlier quoted context omitted.
Well, UNIX is surely responsible for C becoming popular (if not its being a thing in the first place).
I'm not arguing that it is not? It's funny though how many people saw value in C but not in Algol. Maybe C has something going for it?
Re: C meeting is over. C23 added:
#239Earlier quoted context omitted.
I claim it yet again on this very comment. Without UNIX spreading with its free beer into universities, C would have been a footnote on the history of system programming languages.
Nope in the above comment you claim something else. Here is where you claim C requires UNIX like OS: https://news.ycombinator.com/item?id=20828974 Let me tell you, in embedded development we run C on bare metal or under RTOS. There is no UNIX in sight. And the code is portable to many CPU architectures.
Re: C meeting is over. C23 added:
#240Earlier quoted context omitted.
That is why stuff like V-Tune exist with micro-ops profiler and pipeline debugging, maybe ARM should provide better tooling.
This tool helps as much with C (or even higher level languages) as it does with Assembly. It doesn't change the fact both languages work on the same abstract machine model.