Why is C++ getting replaced by Rust while C is not?

 

Both C and C++ should be replaced as system languages. And they should not be used for problem-oriented programming in the first place. Yes, C++ tries to be a language for everything, but that is actually a poor basis for application programming. It results in poor layering and separation of concerns, so everything is mixed up.

C and C++ force programmers to focus on details that programmers should not have to deal with.

Alan Perlis defined low-level languages this way:

"A programming language is low level when its programs require attention to the irrelevant.”

“While, yes, this definition applies to C, it does not capture what people desire in a low-level language.”

Rust has some interesting system ideas, and at least seems more honestly positioned as a system language. And it supports some layering with safe and unsafe modes. However, it does say on its web page that Rust is not formally defined and that will come later. That is rather doing things the wrong way around — once things are poorly defined and designed they are very difficult to change. Of course, you can get things right without formal definition, but it is less likely.

Comments

Popular Posts