6 ms·
All it would take a "C apologist" to explain why they don't want to use JOVIAL for example is that it is cumbersome to type programs in uppercase. The only one
by jstimpfle 5y ago
All it would take a "C apologist" to explain why they don't want to use JOVIAL for example is that it is cumbersome to type programs in uppercase.
The only one I've ever seen talking of a "special gift" was you; most C programmers I know are very honest about the fact that C sucks in some ways. The typical experience is just that it sucks less than many others. What I appreciate most is that it gets out of my way. I don't want to be fighting a language, I want to concentrate on the problem I'm trying to solve.
- pjmlp 5y agoTime to broaden your horizons, I have met plenty of C advocates and UNIX books that tell the story before C there was only Assembly as system programming language. If they actually acknowledged C sucks, lint would have been long adopted instead of being ignored since 1979 until clang tidy was born, and something like bds for strings and vectors would have been long part of the standard library.
- Nicksil 5y ago>Time to broaden your horizons, I have met plenty of C advocates and UNIX books that tell the story before C there was only Assembly as system programming language. Without plenty of examples, one can only assume what you've experienced is outlier. I can't imagine any significant number of experienced software developers think that. Hell, other systems languages born before C are still being discussed today; go back in time and it only becomes more prominent. Unless a developer has been significantly sheltered, your assertion just isn't reasonable.
- pjmlp 5y agoEveryone lives in a bubble and HN isn't representative of those everyday folks that learned on their own, or in some bootcamp.
- Nicksil 5y ago>Everyone lives in a bubble and HN isn't representative of those everyday folks that learned on their own, or in some bootcamp. Sounds like a cop-out.
- pjmlp 5y agoNot really, I just don't have to prove on the court of HN law my personal experience, related to people I have met, or books I longer have access to. If you feel this is a cop-out, I really don't care.
- pdimitar 5y agoWhat I appreciate most is that it gets out of my way. I don't want to be fighting a language, I want to concentrate on the problem I'm trying to solve. Please don't take this the wrong way but I read the above as: "leave me alone, I want to introduce more buffer overflows and integer overflows in peace". Truth is, C programmers are not as infallible as many of them believe, and that's sadly a historically proven fact. At least the above part of your comment makes it sound like you don't understand what languages like Rust and Haskell bring to the table. Was that your intention? Additionally, "fighting a language" can mean dozens of things but at least in Rust, getting your program to compile guarantees that a whole class of bugs is now impossible (unless you actively subvert the Rust compiler in your code which some people successfully do; but that's still easier to audit and account for compared to the tooling of C). Many find that peace of mind and compiler guarantees valuable. It seems that you don't?
- jstimpfle 5y ago> At least the above part of your comment makes it sound like you don't understand what languages like Rust and Haskell bring to the table. > Was that your intention? The arrogance in your post is over the top. > "leave me alone, I want to introduce more buffer overflows and integer overflows in peace". Truth is, C programmers are not as infallible as many of them believe One of the two possibly, but certainly not both. Or, "leave me alone, I just want to get my program done, and have it do the right thing, with appropriate performance, quick to build, good modularity, few dependencies, and not having to rewrite it next year. Security is important but does not override all of these other things." Many find these practical properties and the fun of forming something with their bare hands that works more desirable than burning out while waiting for a build to complete or doing the required maintenance when upgrading dependencies. It seems that you don't?
- geofft 5y agoAt the top of this thread, I set out a number of reasons why a) you are not "fighting a language" by using Rust or Go or Haskell or whatever - in fact you are more able to focus on the problem you want to solve b) there are many reasons to use such a language, not just security, and all the things you mention - correctness, performance, development velocity, modularity, good design, and robustness to new requirements - are aided by features in newer languages 'pdimitar is making a reasonable argument and your dismissal of it as arrogance is uncalled for. I would encourage you to reread both of those comments carefully.