Announcement

Collapse
No announcement yet.

Rust v10 Patches Posted Ahead Of Expected Merging With Linux 6.1

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

  • #31
    Originally posted by ssokolow View Post

    As someone who actually writes Rust, I have no idea what you're talking about when you say "will throw mysterious errors at you instead of telling you that you need to write documentation in the source code for the offending piece of code".

    The only thing it throws "mysterious errors" at you for is type system errors in code with a lot of generics, and they're less mysterious than those C++ throws. (And, more generally, anything that could be complained about in Rust's type system can and was complained about when languages like C forced assembly language programmers to adopt a structured programming model, where functions can only have one entry point (no GOTOing into the middle of a function from outside) and types are on values rather than operations.)

    The only thing I can think of that is "documentation in the source code" is rustdoc, which is no different from Doxygen for C and C++, JavaDoc for Java, etc. except that there's one officially blessed documentation tool that's installed as part of the default toolchain.
    I also have no clue what he is talking about.

    For starters Perl is a dynamic language, where as Rust is a statically typed language. If Rust is throwing errors at you then its because your program has a bug, i.e. on some level it just wont work.

    Furthermore syntax wise Rust is actually extremely conservative, i.e. as much as it could it basically copied C++ (which is what my complaint is) where as Perl's syntax, especially for its time is quite progressive.

    The two languages are as far apart as you can get on many levels and I feel this is just bitching because the person isn't familiar with Rust.

    Comment


    • #32
      Originally posted by mdedetrich View Post


      We know you have a strong opinion. It also happens to make no coherent sense because its full of conspiracy theories and non problems created by someone who evidently cannot program.​

      Originally posted by marios View Post
      1. I am stealing Linus' quote here, and am changing some words to express my point. "Quite frankly, even if the choice of C were to do *nothing* but keep the Rustafarians out, that in itself would be a huge reason to use C".​ The last thing needed in the kernel are those javaspawns...

      Comment


      • #33
        Originally posted by marios View Post

        Wasn't the quote you borrowed originally about C++? That's like me taking one of your previous messages on something else, adjusting it, and then seriously using it to tell you that you're wrong and to shut up. (eg. Rephrasing your opinion on C to tell you that you have no right to be against Rust.)

        Comment


        • #34
          Originally posted by ssokolow View Post

          Wasn't the quote you borrowed originally about C++? That's like me taking one of your previous messages on something else, adjusting it, and then seriously using it to tell you that you're wrong and to shut up. (eg. Rephrasing your opinion on C to tell you that you have no right to be against Rust.)
          Yes it was about C++, I said I changed it to make my point. I did not rephrase it. I thought I was clear about that. I never said that I rephrased it, it just happens that Linus's quote from the pre-Rust years expresses my opinions about a different language.
          Last edited by marios; 29 September 2022, 09:21 AM.

          Comment


          • #35
            Originally posted by marios View Post
            Yes it was about C++, I said I changed it to make my point. I did not rephrase it. I thought I was clear about that. I never said that I rephrased it, it just happens that Linus's quote from the pre-Rust years expresses my opinions about a different language.
            Ahh. That's fair. You're free to do whatever you want with your time. Thankfully, industry excitement seems to place you in the minority.

            Comment


            • #36
              Originally posted by ssokolow View Post

              Ahh. That's fair. You're free to do whatever you want with your time. Thankfully, industry excitement seems to place you in the minority.
              I don't care what industry has to say, whether you like it or not. And yes I am free to do whatever I ant with my time, including arguing with idiots for the lulz...

              Comment


              • #37
                Originally posted by marios View Post

                I don't care what industry has to say, whether you like it or not. And yes I am free to do whatever I ant with my time, including arguing with idiots for the lulz...
                Your time would be better spent learning how to program.

                Comment


                • #38
                  Originally posted by marios View Post
                  including arguing with idiots for the lulz...
                  Good luck finding some then. I had a proper psychologist-administered IQ test as a kid and it was somewhere in the 160s so I'd just be a disappointment to you.

                  Comment


                  • #39
                    Originally posted by ssokolow View Post

                    Quite the opposite. Yes, there are some novel language constructs, a bunch of syntax borrowed from the ML family of languages, and a bunch of concepts taken from the world of functional programming (and I'd be happy to explain things to you if you point to which ones you found confusing), but Rust is laser-focused on making sure that you don't need to be an expert to work on a codebase without breaking things.



                    As someone who actually writes Rust, I have no idea what you're talking about when you say "will throw mysterious errors at you instead of telling you that you need to write documentation in the source code for the offending piece of code".

                    The only thing it throws "mysterious errors" at you for is type system errors in code with a lot of generics, and they're less mysterious than those C++ throws. (And, more generally, anything that could be complained about in Rust's type system can and was complained about when languages like C forced assembly language programmers to adopt a structured programming model, where functions can only have one entry point (no GOTOing into the middle of a function from outside) and types are on values rather than operations.)

                    In fact, Rust is downright famous for taking the crown from Eiffel for most helpful error messages a compiler can present to you.

                    The only thing I can think of that is "documentation in the source code" is rustdoc, which is no different from Doxygen for C and C++, JavaDoc for Java, etc. except that there's one officially blessed documentation tool that's installed as part of the default toolchain.

                    As for what sounds vaguely like a complaint about the Rust compiler having poor forward compatibility, it does not. It has a policy of much stricter forward compatibility than C and C++ compilers, to the point where they have a buildbot named Crater which can build and run unit tests against giant slices (including "all") of the crates.io catalogue to evaluate a proposed change. The only reason you need more than one compiler version is if the project is using the nightly channel and API-unstable features that not only need nightly, but also a #![feature(...)] declaration in the source code or -Z... flag at the command line to activate them. (Yes, Firefox and Rust-for-Linux are doing that, but you can't blame the Rust toolchain developers for what is analogous to requiring GCC patches that haven't been accepted upstream yet.)
                    You can try and retrace my steps to get the gist of what I was going through back in March 2020. I don't remember, because I have better things to remember than being angry and confused.

                    1. Download Firefox 68 source code, or any browser based upon Firefox 68. That was the latest version of Firefox codebase for that particular Firefox fork. Not my choice, not my call, except I wanted that in some distro I like.
                    2. Get your Firefox build dependencies. Among them, you must give a try to different versions of Rust compiler from 1.31 to 1.41. You'll notice that as you rebuild Firefox 68 with newer and newer versions of Rust compiler, you will get more warnings. At Rust 1.33, you should start seeing your first compilation errors. You can write patches to make it work, and those patches should carry you all the way up until Rust 1.37. Once you enter Rust 1.38, you should again get compilation errors.
                    3. You may wonder why did I put Rust compiler 1.41 up there in the range in step 2. It's because the distro I made it for is a rolling release distro and at some point, we have dropped Rust 1.37 and there was no way of going back other than:
                    A - dropping this Firefox fork
                    B - patching this Firefox fork to work with Rust compiler's whimsies, because it would be an insult to call it sober design decisions to break backwards compatibility so non-chalantly like Rust just did
                    C - preserve Rust 1.37 as a compiler, even though it should not be installable if upstream of the distro decided to drop it for all the right reasons

                    Since Rust has already ruined package maintainership for me with its inconsequential development, I am very right to be worried that the same exact analogous situation will happen to other people. I also have the right to indefinitely hold a grudge against Rust because it ruined a hobby for me.
                    Last edited by rmoog; 29 September 2022, 01:36 PM.

                    Comment


                    • #40
                      Originally posted by mdedetrich View Post

                      Your time would be better spent learning how to program.
                      At least we agree on something. It is better for me to spend time to further improve my coding. But then there are times like this, that I am too bored for that and find it more entertaining arguing with idiots...

                      Comment

                      Working...
                      X