Linked by subterrific on Mon 9th Jan 2017 22:25 UTC
OSNews, Generic OSes

Rux's goal is to become a safe general-purpose microkernel. It tries to take advantage of Rust's memory model - ownership and lifetime. While the kernel will be small, unsafe code should be kept minimal. This makes updating functionalities of the kernel hassle-free.

Rux uses a design that is similar to seL4. While there won't be formal verification in the short term, it tries to address some design issues of seL4, for example, capability allocation.

The code is very approachable for anyone interested in capability-based microkernel design.

Thread beginning with comment 639506
To view parent comment, click here.
To read all comments associated with this story, please click here.
Alfman
Member since:
2011-01-28

kwan_e,

Rust is new and part of the culture of creating something from scratch every time design mistakes catch up to them but they don't want to do the real engineering work when it does, opting to repeat other people's mistakes by starting over again. But then, you did say "hobbyist" already



Yes and no. It's really not like new languages are developed in a vacuum, they clearly benefit from experience with languages that preceded them. In other words, today's developers have the benefit of hindsight and can consciously fix many of the issues where C/C++ are criticized, such as cruft, safety and bad compilation times with large projects. So we shouldn't be making the same mistakes that have been made in the past.

But the possibility still exists that we are making new mistakes with new languages, and I think those would be well worth talking about. Do you have anything specific in mind?

Edited 2017-01-10 16:11 UTC

Reply Parent Score: 2

kwan_e Member since:
2007-02-18

today's developers have the benefit of hindsight and can consciously fix many of the issues where C/C++ are criticized over cruft and lack of safety. So we shouldn't be making the same mistakes that have been made in the past.


It's the way they go about fixing the issues - "oh, we'll just create yet another language" - that is the problem. All languages will develop cruft, and all languages will paint themselves into a corner. The most ideological ones tend to do that the most frequently.

Only a handful of languages are left where the base is committed to using it cruft and all and not just abandon it for the latest fad in language design.

Reply Parent Score: 2

Alfman Member since:
2011-01-28

kwan_e,

It's the way they go about fixing the issues - "oh, we'll just create yet another language" - that is the problem. All languages will develop cruft, and all languages will paint themselves into a corner. The most ideological ones tend to do that the most frequently.

Only a handful of languages are left where the base is committed to using it cruft and all and not just abandon it for the latest fad in language design.



I realize you are a C/C++ fan, and there was a time I was too. However many problems with C/C++ are very widely recognized and understood, consequently some people look to new languages to solve them. The big players are motivated to work on new languages like D, swift, rust, go, etc, not because of fads, but because of systemic recurring problems they have experienced with their existing codebases.

This video on the topic of new and old systems programming languages is very informative, partly because Bjarne Stroustrup (the creator of C++) is there along with others, and he personally acknowledges the criticism against C++ being made by the employees of google and facebook in their build processes. I personally admire the way they are so friendly with each other with no animosity at all. Stroustrup even humorously takes it in stride "the reason I take this mic back is to say that I don't disagree with that." to everyone's laughter.

LangNext 2014 C++, Rust, D, Go 1HR discussion
https://www.youtube.com/watch?v=BBbv1ej0fFo


You like C/C++, then great. Maybe D-lang would be up your alley too then? Maybe we can discuss that? I enjoy taking about all languages, however in past discussions you seemed to take serious offense to any possibility that another language could have a single benefit over C++.

http://www.osnews.com/comments/29463

My goal is to foster a friendly discussion here, but to be honest, I don't know how to deal with you, haha. So I ask you thusly: what can I do so that we can have a friendly discussion even when rust comes up and we disagree? ;)

Edited 2017-01-10 18:24 UTC

Reply Parent Score: 3

RobG Member since:
2012-10-17

To be fair, I've used C++ about 1990, and its just getting too long in the tooth. Not enough deprecation in there - largely, I guess, due to the way its module system is based on textual inclusion - so it is hard to change things without breaking compatibility.

Templates are lovely, but end up with almost everything being in a header, so compile times just get worse. Without Concepts, error messages keep getting more complex, frequently surfacing in library code the developer should have no reason to know exist.

I know there are proposals for both modules and concepts, but they seem to be permanently kicked to the next version.

I've been experimenting with Rust, and must admit that even in its current state it is just a nicer experience, to me, than C++ development. I wish them every success.

Reply Parent Score: 2