Let's face it, the most important, truly alternative, hobby operating systems that are somewhat usable today are three: MenuetOS, SkyOS and AtheOS. All three are hobby, open source OSes, written from people who enjoy coding low level programming. Read more about the differences between these OSes and which one you might want to try out.
Permalink for comment
To read all comments associated with this story, please click here.
I'm sorry to nit pick on your review of Menuet. There's a statement about inconsistencies arising from procedural programming. I don't agree. I believe this is due to the architecture of the software. Of course I'm just speculating, I haven't seen the source. (It's probably very nice source too.)
Anything that can be done object-oriented style can be done procedural style.
I think OOP is very cool and the advantages are obvious: encourages consistency, higher level of abstraction, data encapsulation, simplification of code. Properly implemented OO code should have no or virtually no overhead compared to procedural code.
I still prefer procedural programming. Most mainstream processors by way of instruction sets and register sets are procedural-centric. If done incorrectly, procedural programming can seem tedious and error-prone. If done correctly, procedural programming is that exact same thing as OO programming except inverted.
The programmer has the impression the code actively operates on data. (This is my impression anyway.)
I feel procedural programming is easier to follow, debug, and is more logical - especially in lower level languages like Assembly. Object oriented assembly does exist; I heard lots (I think from here) about a form being implemented in GEOS back in the day.
Anyway this deficiency you speak of is more the fault of programmer than the language or the style of language. Sorry for nit picking this bad. I just thought I would come to the defense of procedural programming. It seems to really be under the gun lately.
Oh yeah, I don't think MMX, 3Dnow!, and friends would help an operating system much. These instructions are mostly used for recurring operations on larges amounts of data. This is something applications do more often than operating systems. Maybe in fancy graphics routines?
I'm sorry to nit pick on your review of Menuet. There's a statement about inconsistencies arising from procedural programming. I don't agree. I believe this is due to the architecture of the software. Of course I'm just speculating, I haven't seen the source. (It's probably very nice source too.)
Anything that can be done object-oriented style can be done procedural style.
I think OOP is very cool and the advantages are obvious: encourages consistency, higher level of abstraction, data encapsulation, simplification of code. Properly implemented OO code should have no or virtually no overhead compared to procedural code.
I still prefer procedural programming. Most mainstream processors by way of instruction sets and register sets are procedural-centric. If done incorrectly, procedural programming can seem tedious and error-prone. If done correctly, procedural programming is that exact same thing as OO programming except inverted.
The programmer has the impression the code actively operates on data. (This is my impression anyway.)
I feel procedural programming is easier to follow, debug, and is more logical - especially in lower level languages like Assembly. Object oriented assembly does exist; I heard lots (I think from here) about a form being implemented in GEOS back in the day.
Anyway this deficiency you speak of is more the fault of programmer than the language or the style of language. Sorry for nit picking this bad. I just thought I would come to the defense of procedural programming. It seems to really be under the gun lately.
Oh yeah, I don't think MMX, 3Dnow!, and friends would help an operating system much. These instructions are mostly used for recurring operations on larges amounts of data. This is something applications do more often than operating systems. Maybe in fancy graphics routines?