Why has not a programming language been invented to replace C and C ++ to facilitate the development of operating systems? [closed]

-2

C and C ++ programming languages have replaced Assembly in operating system development.

No one in their right mind is currently developing a fully-featured operating system in Assembly. Please correct me if I am wrong.

Why has not a programming language been created to replace C and C ++ to make it easier to develop operating systems?

Money and time were invested in the invention of C and C ++ to replace the Assembly to facilitate the development of operating systems. Why not invest money and time in the invention of a programming language to replace C and C ++ to facilitate the development of operating systems?

    
asked by anonymous 08.10.2018 / 23:07

1 answer

9

The question starts from a wrong premise. It has several other languages that were created (invented would be a bad term) with the objective, among others, of making an operating system, most of them unsuccessful because they were not good enough, or existing ones were already good enough, which shows that it is complicated to do something to replace these languages. The one that was most successful was Rust and was actually used to create Redox .

Many languages have replaced the Assembly because low-level language is very unproductive and has several disadvantages, it is a brutal difference and that is one of the few things that is considered silver bullet in computing. Switching from C or C ++ to another medium or high level language the gain is very small and usually has some associated loss, why create something new that is only different and not necessarily better? If you think you have to create another you need to give a valid justification and convince people. Voluntarism is not enough.

The Assembly is still required for some parts of creating any non-jibing OS. And it has several smaller OSs made entirely in Assembly even more recently. They may not be OSs that compete with Windows, Linux, these things, but they are fully functional and some are used in niches. There are advantages, it is not only disadvantage to do in Assembly.

Virtually no one thinks that it is necessary to create another language for building operating systems. If you have no reason you do not have to do it, you do not have to invest in it. People who do this are comfortable with what exists. Even Rust was created for other things, being able to build a workable OS was just side effect.

These languages are called system languages .

    
08.10.2018 / 23:28