New programming language for OS Development

Programming, for all ages and all languages.
Post Reply
User avatar
AlfaOmega08
Member
Member
Posts: 226
Joined: Wed Nov 07, 2007 12:15 pm
Location: Italy

New programming language for OS Development

Post by AlfaOmega08 »

Anyone, sooner or later, gets to the point of getting lost in the meanders of the source code of your operating system.
It is normal to have difficulty managing the code as the project grows in number of files and features. This is mainly in the ability of the programmer to keep the code as clean and tidy as possible. However, despite efforts, you will find yourself always lost in a hell of sources and headers.
I believe that the choose of the programming language for the project will influence this a lot. For example I find C# and Java a lot (and a lot) tidier than C or C++, just for the fact that headers are not-existant. You don't have to edit the header everytime you add a new method or variable to the class. Each class is kept in a single file.

Hence my attempt to define (and eventually build) a new programming language adapt for larger projects, in particular oss. I would really appreciate a C#-like language. Obviously instead of compiling in the Common-Intermediate-Language it would compile to x86 asm or whatever ready and runnable for your CPU.

What do you think? Am I right or wrong? Why?
Would you like to try to create such a language?
Please, correct my English...
Motherboard: ASUS Rampage II Extreme
CPU: Core i7 950 @ 3.06 GHz OC at 3.6 GHz
RAM: 4 GB 1600 MHz DDR3
Video: nVidia GeForce 210 GTS... it sucks...
User avatar
NickJohnson
Member
Member
Posts: 1249
Joined: Tue Mar 24, 2009 8:11 pm
Location: Sunnyvale, California

Re: New programming language for OS Development

Post by NickJohnson »

Why not write a tool to automatically generate a header containing all of the function/class prototypes in your project just before compiling? That would be a ton easier than writing a whole new language.

Also, I find headers actually beneficial: they provide a good format for designing subsystems and libraries sort of "by contract", by defining their interfaces before writing any code. Regardless of how you use them, maintaining headers should be minor bookkeeping in comparison to writing actual code.
Post Reply