Announcement

Collapse
No announcement yet.

Making The Case For Using Rust At Low Levels On Linux Systems

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Making The Case For Using Rust At Low Levels On Linux Systems

    Phoronix: Making The Case For Using Rust At Low Levels On Linux Systems

    Linux kernel developer Andy Grover who is employed by Red Hat has written a lengthy blog post making the case for using the Rust programming language for low-level Linux...

    http://www.phoronix.com/scan.php?pag...Linux-Thoughts

  • #2
    if torvalds didnt accept c++ for being among other things, unstable (sounds like a joke but it isn't). do you think he wil accept rust?

    i don't
    Last edited by davidbepo; 06-10-2016, 01:32 PM.

    Comment


    • #3
      Originally posted by davidbepo View Post
      if torvalds didnt accept c++ for being among other things, unstable (sounds like a joke but it isn't). do you think he wil accept rust?

      i don't

      Torvalds is the kernel. This article is about the userspace programs, like the things in /bin /sbin and the /usr variants of those. This is more at a GNU/FSF/Distro decision than at Torvalds and the kernel itself. The same argument for Rust could apply to BSD and other systems as well as to just Linux.

      Comment


      • #4
        Originally posted by davidbepo View Post
        if torvalds didnt accept c++ for being among other things, unstable (sounds like a joke but it isn't). do you think he wil accept rust?

        i don't
        Grover believes Rust is "extremely well-suited for low level Linux systems user-space programming."
        This isn't about kernel code, Torvalds does not have to accept anything here.

        Comment


        • #5
          Originally posted by davidbepo View Post
          if torvalds didnt accept c++ for being among other things, unstable (sounds like a joke but it isn't). do you think he wil accept rust?

          i don't
          To my knowledge, Torvalds deems C++ libraries as unstable, not C++ itself. I don't get the impression he hates OOPs, just poorly implemented ones. As far as I'm aware, C was never intended to be object-oriented, and C++ was sort of just an "add-on", for lack of better phrasing. Though, I'm not sure how much that still applies today. I don't dabble in C++. If I want to work with objects, I use python.

          Since Rust apparently has comparable performance to C++ but was meant to be secure and object-oriented from it's inception, it makes sense that Linus may be more accepting of it. But as stated by others, Linus really only deals with the kernel, where objects should be entirely avoidable. It would be interesting to see if Rust starts replacing applications, but I don't suspect Linus will be working with it much.
          Last edited by schmidtbag; 06-10-2016, 02:00 PM.

          Comment


          • #6
            But even for user-space. I'm doing Qt5 and the Rust binding I found [1] has only one example and this TODO list:
            • More Qt modules support
            • Global Qt functions support
            • Qt enums support
            • Qt generic container classes support
            • Operator methods support

            In other words it's not worth for me switching from a known language (C++11) with a good and known building system (cmake) with a good toolkit (qt5) to: an unknown but allegedly superior language (Rust) with an unknown building system (cargo or whatever) with inferior bindings to Qt5.

            I'm trying to be unbiased here since I'm interested in good stuff, but Rust's pros and cons just don't do it for now for me.



            [1] https://github.com/kitech/qt.rs

            Comment


            • #7
              OTOH, Golang is already being used for lots of things, and not only to replace them

              Comment


              • #8
                From the linked article
                — daemons, services, command-line tools, that sort of thing.
                Sound like Rust could be an alternative to python or plain c/c++ in those fields... But probably is still to early to talk about using it to build complex desktop applications, bindings to external library aren't still ready to mass-using

                Comment


                • #9
                  Originally posted by schmidtbag View Post
                  object-oriented
                  Rust is not OO which can be a hard sell to C++ or Python veterans.

                  Comment


                  • #10
                    I completely agree with all the reasoning. I've got 10+ years of C++ experience and while I appreciate C++11,14,17 for all they offer, I think Rust has a serious shot at being a serious contender to C/C++. I honestly hate debugging parallel and/or memory bugs. It takes so much time! Rust is likely to prevent most of these mistakes in the first place! But I will say that Rust is crazy complicated compared to C++. The ownership, lifetime, borrowing concepts are painful to grasp. The language also achieves OO in a really neat, although ad-hoc way, with Traits. It's not as obvious as C++ for doing some things like inheritance. I also do appreciate automatic dependency management in Cargo. It's more organized and uniform. You don't need to deal with third party build systems or unit testing frameworks.

                    I've already read most of the Rust book last week. Now I just need to an ice breaker project. An IRC bot or something like that would be perfect.

                    Comment

                    Working...
                    X